Binomialkoeffizient zu gegebener Zahl finden

Neue Frage »

Hannc Auf diesen Beitrag antworten »
Binomialkoeffizient zu gegebener Zahl finden
Hallo zusammen,

mich beschäftigt gerade folgendes Problem: Wie kann ich zu einer gegebenen Zahl einen passenden Binomialkoeffizienten finden (vorausgesetzt es gibt einen)?

Ein Beispiel zur Veranschaulichung:

Ich suche n und k, so dass .

Lösungen dafür wären und bzw. ..

Gehen wir der Einfachheit halber davon aus, dass jeweils das kleinste gesucht wird, so dass es ein gibt mit .

Meine Frage: Gibt es dafür ein systematisches Vorgehen? In entsprechenden Tabellen nachschlagen oder mir per JavaScript die ersten 19 Zeilen des Pascal'schen Dreiecks ausdrucken zu lassen um einen Binomialkoeffizienten zur Zahl 27132 zu finden ist irgendwie... unelegant.

Für Antworten im Voraus vielen Dank!
Math1986 Auf diesen Beitrag antworten »

Es gibt immer die Lösung Augenzwinkern
Wähle also n=x und k=1, damit wissen wir schonmal dass es immer eine Lösung gibt.
Shortstop Auf diesen Beitrag antworten »

. Jouh, Rene hat Recht. Sollte so früh keine Beiträge mehr schreiben Wink
René Gruber Auf diesen Beitrag antworten »

So geschrieben stimmt das natürlich nicht: So ist etwa für alle mit .
Hannc Auf diesen Beitrag antworten »

Zitat:
Original von Math1986
Es gibt immer die Lösung Augenzwinkern
Wähle also n=x und k=1, damit wissen wir schonmal dass es immer eine Lösung gibt.


Hallo und vielen Dank für die Antwort.

Ok, lassen wir die trivialen Lösungen beiseite. Ich möchte also eine/die Lösung mit möglichst kleinem finden. Setze ich beispielsweise , möchte ich als Lösung bzw. erhalten.

Das ganze würde ja prinzipiell 2 Schritte erfordern:

1. Passenden Binomialkoeffizienten finden.
2. Zeigen, dass dies der Bin.Ko. mit kleinstmöglichem ist, sprich: die Zahl das erste Mal im Pascal'schen Dreieck auftaucht.

Leider bin ich beim Durchforsten des Internet und meiner Büchersammlung auf keinen wirklich brauchbaren Ansatz gestoßen... sollte es ihn geben, versteckt er sich gut oder ich bin blind. verwirrt

Meine bisherigen Versuche haben immer nur einen Spezialfall abgedeckt - z.B. wenn eine Dreieckszahl ist, die sich bekanntlich als darstellen lässt. Unklar war mir auch da, ob das wirklich das kleinstmögliche war...
René Gruber Auf diesen Beitrag antworten »

Zitat:
Original von Hannc
Leider bin ich beim Durchforsten des Internet und meiner Büchersammlung auf keinen wirklich brauchbaren Ansatz gestoßen...

Das liegt wahrscheinlich dran, dass das zwar für sich gesehen eine interessante zahlentheoretische Fragestellung ist, die aber darüber hinaus für andere Probleme weitgehend bedeutungslos ist - soweit ich weiß. Was nicht heißen soll, dass man sich nicht damit befassen soll. Augenzwinkern
 
 
Mystic Auf diesen Beitrag antworten »

Ja, es gibt da eine "Top down"-Strategie und eine "Bottom up"-Strategie, je nachdem, ob man bei der Suche nach dem "richtigen" n von oben oder unten zu suchen beginnt... Beide unterscheiden sich grundlegend...

Nachfolgend der Code in C# für letztere, welcher in dieser Form allerdings nur für n<67 funktioniert , was aber hier auch ausreicht... Es sollte kein Problem sein, ihn bei Bedarf in jede andere C-Sprache zu konvertieren...

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
using System;
using System.Collections.Generic;

namespace pascal
{
	class Program
	{
		public static void Main(){
			int k=-1,n=0;
			ulong x=27132;			
			List<ulong> p=new List<ulong>{1};
			
			while (n<67) {
				k=p.IndexOf(x);
				if (k>=0) break;
				n++; p.Insert(0,0); 
				for(int i=0;i<p.Count-1;i++) 
					p[i]+=p[i+1];
			}
			
			Console.WriteLine("n={0},k={1}",n,k);
			Console.ReadKey(true);
		}
	}
}


Edit: Aus zahlentheoretischer Sicht - weil René diesen Punkt angesprochen hat -, fällt mir eigentlich jetzt nur ein, dass das in Frage kommende n mindestens so groß sein muss wie die größte Primzahlpotenz, welche in vorkommt. (Vielleicht hätte ich das aber jetzt lieber verschweigen sollen, da es mein obiges Programm obsolet macht! traurig )
Hannc Auf diesen Beitrag antworten »

Zitat:
Original von Mystic
Edit: Aus zahlentheoretischer Sicht - weil René diesen Punkt angesprochen hat -, fällt mir eigentlich jetzt nur ein, dass das in Frage kommende n mindestens so groß sein muss wie die größte Primzahlpotenz, welche in vorkommt. (Vielleicht hätte ich das aber jetzt lieber verschweigen sollen, da es mein obiges Programm obsolet macht! traurig )


Macht es nicht, es hat mich immerhin dazu animiert, mich mal mit Mono und C# zu beschäftigen. Augenzwinkern
Hanc Auf diesen Beitrag antworten »

Zitat:
Original von Mystic
Edit: Aus zahlentheoretischer Sicht - weil René diesen Punkt angesprochen hat -, fällt mir eigentlich jetzt nur ein, dass das in Frage kommende n mindestens so groß sein muss wie die größte Primzahlpotenz, welche in vorkommt.


Man entschuldige den Doppelpost (edit geht als nicht-registrierter Benutzer natürlich nicht), aber könntest du bitte kurz skizzieren, warum das so ist (stehe gerade auf dem Schlauch)?
Mystic Auf diesen Beitrag antworten »

Wenn ganz allgemein die Vielfachheit bezeichnet, mit der die Primzahl in der Primfaktorzerlegung einer natürlichen Zahl vorkommt, so gilt ja bekanntlich



wobei diese Summe zwar formal unendlich ist, tatsächlich aber nur die Summanden mit Beiträge > 0 liefern... Die anschauliche Bedeutung von r ist dabei, dass die größte Potenz von ist, für welche noch gilt...

Damit gilt dann



und indem man diese letzte Ungleichung zur p-ten Potenz erhebt folgt daraus wegen schließlich die Behauptung...

Edit: Bitte jetzt nicht sagen, du weißt nicht wieso der unterklammerte Ausdruck ist, denn ein bißchen was zum selber nachdenken sollte schon noch übrigbleiben... Wink

Edit2: Ja tatsächlich, das sollte man am besten gleich in der Allgemeinheit, wie von René unten angedeutet, beweisen... (Und ich dachte schon, ich bekomme einen Rüffel, weil ich die runden Klammern rund um den den unterklammerten Ausdruck vergessen hatte! Augenzwinkern )
René Gruber Auf diesen Beitrag antworten »

Zitat:
Original von Mystic
Edit: Bitte jetzt nicht sagen, du weißt nicht wieso der unterklammerte Ausdruck ist

Verallgemeinert könnte man diese nette kleine Eigenschaft so formulieren:

Für alle reellen Zahlen gilt . Augenzwinkern
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »