Roulette
-
HAllo! ich muss ein programm schreiben, das lautet so:
Schreibe ein Programm, das 1000 Durchgänge eines Roulettespiels simuliert. Die Häufigkeit (absolut und relativ) für jede einzelne Zahl ist auszugeben.
z.B. Zahl 0 ist 31 mal gekommen, das sind 3,1%wie schreibe ich das? bzw. was muss ich da machen?!
Mfg Yankys
-
Machste dir nen Array, das so gross ist wie die maximal Moegliche Zahl.
Jedes Feld hat den Startwert 0.
Dann tuste 1000 mal eine Zufallszahl erzeugen im Bereich bis zur max. Zahl und wenn du bsp. die 3 wuerfelst, dann erhoehst du das 3.Feld des Arrays um 1.So hast du nach den 1000 mal wuerfeln fuer jede Zeit die Haufigkeit.
Der Rest sollte klar sein.
-
sorry aber könntest du mir ein snippet code schreiben oda so? damit ich mir das besser vorstellen kann???? und ich glaub nicht das der lehrer 1000 wuerfeln will...sondern einfach 1000 runden machen und dann ausgeben wann welche zahl wie oft rauskommt
-
Sorry, aber fertigen Quellcode kriegste von mir defintiv nicht serviert.
Zum Auswuerfeln kannste nehmen: x = rand()%(max+1);
Damit sind dann alle Zahlen von 0 bis incl. max moeglich.Vielleicht einfach nochmal in den Hefter schauen, was eine Schleife ist.
-
Ich warne dich aber gleich vor, die rand() Funktion produziert nicht wirklich "gute" Zufallszahlen. Wunder dich also nicht darüber.
-
Dann kommt halt noch ein srand mit der Systemzeit als Argument davor und dann passt das

-
@SeppShot: Auch mit srand() sind die Zahlen nicht wirklich zufällig, ich habe schon mit einem Freund Erfahrungen damit gesammelt. Wenn du die Funktion benutzt um 10 Zufallszahlen zu erzeugen fällt das nicht auf, aber wenn du Programm hast die wirklich an der Funktion hängen (Spiele wo das Spielfeld mit rand generiert wird, merkst du das dahinter ein System steckt). Bei 1000mal drehen fällt sowas dann eventuell auf. AFAIK ist die rand() funktion in der Boost Lib besser, habs aber noch nicht getestet.