Zufallsgenerator - Syntax bis Erläuterung
-
Ich glaub ich hab alle Beiträge zu Zufallsgeneratoren gelesen, doch Blick ich nicht ganz durch ....
Es geht um das Berühmt Nimm-Spiel ...
nun möchte ich nicht nur ein Schwierigkeitsgrad einbauen, sondern das Spiel auch schöner gestallten.
Bei meinem Borland mal F1 gedrückt und dann kam auch schon die Syntax von rand() ... ich fein eingegeben und dann ging es nicht ...
nunja ich brauch mal ne genaue Erläuterung (mit und zur Syntax) damit ich das in meine Newbie-Hirn bekomme.
Grüße Binat
-
Um Zufallszahlen anzuwenden, mußt du als erstes mal deinen Generator vernünftig initialisieren (die meisten ZZ-Generatoren liefern determinisitische Zahlenfolgen, die allerdings zufällig aussehen):
srand(time(NULL));//Initilialisierung mit aktueller ZeitDer nächste Schritt ist es, eine neue Zufallszahl zu holen:
int zz=rand();//"zufällige" Zahl im Bereich [0,RAND_MAX[ ermittelnUnd schließlich mußt du diese Zahl auf den Bereich umrechnen, den du benötigst, z.B.:
double z_0_1 = (double)zz/RAND_MAX;//Gleitkomma-Zahl 0<=z<1 int z_x = zz%maxval;//Ganzzahl 0<=z<maxval; int z_x2 = z_0_1 * maxval;//Ganzzahl 0<=z<maxval (idR besser verteilt als z_x)PS: Damit du die Funktionen anwenden kannst, benötigst du noch die richtigen Header:
#include<crand>//rand(),srand(),RAND_MAX #include<ctime>//time()