folgendes prog soll den binominalkoeffizienten berechnen. mit diesem lässt sich zum beispiel die wahrscheinlichkeit berechnen, einen 6er bei 6 aus 49 zu bekommen.
allerdings funktioniert das prog nicht so wie ich es gern hätte.
formel für den binominalk. : menge!/(elemente!*(menge-elemente)!)
mit kleinen zahlen funktioniert das ganze, sobald ich aber grössere zahlen eingebe, kommt irgend ein murks raus... dachte schon, das die datentypen falsch gewählt sind, aber das kann ja net sein bei float... jemand ne idee?
allerdings funktioniert das prog nicht so wie ich es gern hätte.

formel für den binominalk. : menge!/(elemente!*(menge-elemente)!)
mit kleinen zahlen funktioniert das ganze, sobald ich aber grössere zahlen eingebe, kommt irgend ein murks raus... dachte schon, das die datentypen falsch gewählt sind, aber das kann ja net sein bei float... jemand ne idee?
Code:
float binominal (int b_element, int b_menge);
float fakultaet (int zahl);
void main ()
{
int menge, elemente;
float ergebniss;
printf("Eingabe der Menge: \t");
scanf("%d", &menge);
printf("Eingabe der Elemente: \t");
scanf("%d", &elemente);
ergebniss = binominal(elemente, menge);
printf("Anzahl der Kombinationsmöglichkeiten: \t%.0f\n", ergebniss);
}
float binominal (int b_elemente, int b_menge)
{
float b_ergebniss = 1;
b_ergebniss = fakultaet(b_menge)/(fakultaet(b_elemente)*fakultaet((b_menge-b_elemente)));
return b_ergebniss;
}
float fakultaet (int zahl)
{
float f_ergeb=1;
for(int i=zahl; i>0; i--)
{
f_ergeb = f_ergeb * i;
}
return f_ergeb;
}