weis wer was die einfachste form ist zufallszahlen zwichen 1 und 20 zu generieren? (ohne nachkommastelle)

mfg G_loW

Code: Alles auswählen
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <time.h>
void main()
{time_t start; //Speichert aktuelle Zeit als int
srand(start); //legt Startwert für Randombefehl fest
int wert = (rand() % 100)+1; //wert zw.1 u 100
}
Code: Alles auswählen
srand (time(0));
int zahl;
zahl=rand()%19;
zahl++;
Nein, hier muss man aufpassen. Der Modulooperator liefert den Rest der Ganzzahldivision der linken durch die rechte Zahl. Wenn wir jetzt also durch 19 dividieren dann kann der ganzzahlige Rest natürlich maximal 18 sein, da sich eine Division durch 19 genau ausgeht und deshalb auch 0 Rest bleibt.Dubbel hat geschrieben: rand()%19; erzeugt eine zufällige Zahl zwischen 0 und 19.
Code: Alles auswählen
rand() % 20 + 1;
Stimmt. Ich habs mir einmal in die Howto-Liste geschrieben.Dubbel hat geschrieben:Edit3: Mich wundert es, dass das nicht im Wiki steht (habs jedenfalls nicht gefunden).