Zufallszahl
-
Hallo,
ich habe für die Zufallszahlenbestimmung:random = (rand () % ((y + 1) - x)) + x;
die Variablen x und y werden sonst immer kostant gesetzt. Meine Frage ist, ob diese Zahlen auch während eines Programms verändert werden können? Beispielsweise, wenn die Stelle eines Arrays abgearbeitet worden ist, im nächsten Schritt das Intervall der Zufallszahlen sich um 1 erhöht, also 'x' einfach verändert wird. Ist dieses möglich? Denn ich glaube an dieser Stelle stürzt mein Programm ab...
-
Ja, das geht. Wenn dein Prgramm abstürzt, zeig doch mal ein etwas umfangreicheres Beispiel. (~25 - 50 Zeilen)
-
alos,
ich habe das in eine for-Schleife getan:for (i = 0; i < 3; i++){ ... random = (rand () % ((y + 1) - i)) + i; ... }
ist dieses denn so korrekt? oder funktioniert dieses nicht dem Prinzip nach?
-
Noch mal: Ja. Zeig mehr Code.
-
Wenn dein Programm beim bearbeiten eines Arrays abstürtzt, ist meist ein falscher Index schuld.
-
Die Idee ist es eine Zahlenfolge zu erzeugen. Diese Folge soll statistische Eigenschaften haben. Dazu ist es natürlich nötig rand() mehrmals (eventuell in einer Schleife!?) aufzurufen.
Bitte vergiss nicht die Folge am Anfang des Programms mit srand(...) zu initialisieren.Und ja. Zeig mehr Code!
-
Samsung2 schrieb:
random = (rand () % ((y + 1) - i)) + i;
Du musst darauf achten, dass es nicht %0 wird. Das wäre eine Division durch 0.