Joagamer Skrevet 29. desember 2011 Forfatter Del Skrevet 29. desember 2011 Tusen takk til alle! Her er resultatet: class random { private $seed; public function __construct($seed) { $this->seed = $seed; } public function next() { $this->seed = intval($this->seed * 1103515245 + 12345); return (int)($this->seed/65536) % PHP_INT_MAX; } } $gen = new random(1337); for ($i=0; $i<10; $i++) { echo $gen->next()."<br />"; } Lenke til kommentar
Joagamer Skrevet 29. desember 2011 Forfatter Del Skrevet 29. desember 2011 (endret) Åjda, det ser ut til at den funksjonen ikke gir meg en uendelig random tallrekke, men derimot gjentar seg selv etterhvert. Er det noen andre funksjoner jeg kan bruke til generatoren? Det var bl.a. nevnt "Mersenne Twister", kan det være en løsning? Edit: Huff, Mersenne Twister er super avansert. Endret 29. desember 2011 av Joagamer Lenke til kommentar
torbjørn marø Skrevet 29. desember 2011 Del Skrevet 29. desember 2011 Åjda, det ser ut til at den funksjonen ikke gir meg en uendelig random tallrekke, men derimot gjentar seg selv etterhvert. Jeg føler det er på tide å spørre hvorfor du trenger en uendelig rekke? Lenke til kommentar
Joagamer Skrevet 29. desember 2011 Forfatter Del Skrevet 29. desember 2011 Åjda, det ser ut til at den funksjonen ikke gir meg en uendelig random tallrekke, men derimot gjentar seg selv etterhvert. Jeg føler det er på tide å spørre hvorfor du trenger en uendelig rekke? Det er til en generator, som genererer et bilde på x antall pixler. Med en oppløsning på 1000*1000 pixler blir det fort ganske mange pixler, hvor hver av dem trenger et random tall, utifra et seed. Men som jeg har sagt tidligere så har jeg funnet en alternativ løsning, med å rote rundt med de eksisterende random funksjonene i PHP, og vikle dem litt sammen. (Men det er fortsatt aktuelt å finne ut av det orginale spm.) Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå