Hi. Ich versuche gerade mit ein paar Freunden einen Zufallsgenerator unter SUSE Linus zu basteln, aber ich schaffe es einfach nicht. Wir haben zwar einen hinbekommen, aber der brauch immer eine Sekunde Zeit, bevor sich der Wert ändert. Aber ich will möglichst große Datenmengen in kurzer Zeit abarbeiten. Mit dem Zufallsgenerator würde das also Stunden dauern, bevor ich ein Ergebnis bekomme.
Hat vielleicht einer von euch eine Idee?
Danke im vorraus.
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
http://www.answers.com/topic/dev-random
oder auch ganz klassisch z.b.:
static long lastrand = 1L;
void srand(unsigned int seed){
lastrand = (long)seed;
}
int rand (){
return(((lastrand = lastrand * 214013L + 2531011L) >> 16) & 0x7fff);
}
und für wechselnde startwerte irgendwo dann
srand((unsigned int)time( NULL ) );
rand() und srand() sollten aber in jeder entwicklungsumgebung vorhanden sein, evtl. mit einem anderen namen aber fehlen wird das wohl nirgendwo.
mr.escape
oder auch ganz klassisch z.b.:
static long lastrand = 1L;
void srand(unsigned int seed){
lastrand = (long)seed;
}
int rand (){
return(((lastrand = lastrand * 214013L + 2531011L) >> 16) & 0x7fff);
}
und für wechselnde startwerte irgendwo dann
srand((unsigned int)time( NULL ) );
rand() und srand() sollten aber in jeder entwicklungsumgebung vorhanden sein, evtl. mit einem anderen namen aber fehlen wird das wohl nirgendwo.
mr.escape
Danke für die Antwort, aber einer meiner Freunde hat es jetzt doch hinbekommen.
Und zwar folgendermaßen:
main()
{
....
srand(getpid());
....
}
und in der Methode:
{
int zufallswert = rand() % 50; // Übergibt einen Wert zwischen 0 und 50 an zufallswert
....
}
Trotzdem Danke.
Danke für die Antwort, aber einer meiner Freunde hat es jetzt doch hinbekommen.
In der guten halben stunde? ;)
int zufallswert = rand() % 50; // Übergibt einen Wert zwischen 0 und 50 an zufallswert
Zwischen 0 und 49!
mr.escape
In der guten halben stunde? ;)
int zufallswert = rand() % 50; // Übergibt einen Wert zwischen 0 und 50 an zufallswert
Zwischen 0 und 49!
mr.escape