Zufallszahlen erzeugen

Letztes Update 2020/10/07 12:07
An der Konsole starten wir den Editor Nano:

nano zufall.c

Hier geben wir folgendes ein:

/************************* * Zufallszahlen erzeugen * *************************/ #include <stdio.h> #include <stdlib.h> #include <time.h> int zufall, i; // globale Variable void printzufall() { srand((unsigned)time(NULL)+i); zufall = rand()%99+1; printf("%2d. %2d\n", i, zufall); // %2d = 2 Stellen rechtsbündig } int main( void ) { for (i=0; i<=10; i++) { printzufall(); } return EXIT_SUCCESS; }

Mit diesem Programm wird eine Gruppe von 10 Zufallszahlen im Bereich von 1 bis 99 erzeugt und ausgedruckt.

for (i=0; i<=10; i++)

Globale Variablen
Wenn von mehreren Blöcken aus auf ein und dieselbe Variable zugegriffen werden soll, muss man diese Variablen als Global definieren. Eine Variable wird global, indem man sie nicht in einem Block, sondern außerhalb der Hauptfunktion deklariert.

int zufall, i; // globale Variable

Die Funktion rand()
Zufallszahlen sind eine Reihe von zufällig wirkenden Zahlen, die jedoch mit einer mathematischen Formel errechnet werden. Zu ihrer Initialisierung wird die Finktion srand() verwendet. Um bei der Erzeugung einer Zufallszahl nicht immer dieselbe Reihenfolge der Zahlen zu erhalten, wird srand() mit der time() Funktion initialisiert. In der Schleife zusätzlich mit der Laufzeitvariablen i.

Die Funktion void printzufall()
Um das Programm übersichtlicher zu machen, wird eine vom Hauptprogramm (int main()) abgesetzte Funktionen (Unterprogramme) angelegt, auf die vom Hauptprogramm zugegriffen werden kann.