Mezox Skrivet 2 April 2008 Rapport Dela Skrivet 2 April 2008 Jag har en fråga av ren nyfikenhet. Hur genererar datorer slumpmässiga tal? Vad jag har märkt av programmering är att den är mycket "straight-forward" och slumpmässiga tal skulle vara omöjligt... Citera Länk till kommentar Dela på andra sajter More sharing options...
Ozoon Skrivet 2 April 2008 Rapport Dela Skrivet 2 April 2008 I c++ och funktionen srand så tar den antalet sekunder sen nyår 1989, eller nåt sånt... Vet inte riktigt hur java kör med sin math.random funktion, men lär vara nåt liknande.. Citera Länk till kommentar Dela på andra sajter More sharing options...
Mezox Skrivet 2 April 2008 Författare Rapport Dela Skrivet 2 April 2008 Okej, tack! ^_^ Vill gärna ha fler exempel... Citera Länk till kommentar Dela på andra sajter More sharing options...
Chainsawkitten Skrivet 2 April 2008 Rapport Dela Skrivet 2 April 2008 Det finns inga slumpmässiga tal. Citera Länk till kommentar Dela på andra sajter More sharing options...
Mezox Skrivet 2 April 2008 Författare Rapport Dela Skrivet 2 April 2008 Det finns inga slumpmässiga tal.Jag vet <_< Men jag vill veta hur de "slumpmässiga" talen genereras... Citera Länk till kommentar Dela på andra sajter More sharing options...
epaaj Skrivet 2 April 2008 Rapport Dela Skrivet 2 April 2008 Det är oftast genom tid eftersom det hela tiden ändras och då är bra att använda. Det är inte mycket annat i datorn som hela tiden uppdateras. Uptime möjligtvis, men även det är ju en typ av tid. Bara att man räknar från ett annat datum. Citera Länk till kommentar Dela på andra sajter More sharing options...
Mezox Skrivet 2 April 2008 Författare Rapport Dela Skrivet 2 April 2008 (redigerat) Okej, tack igen! När det gäller tvspel så har man oftast inte en klocka, eller? Redigerat 2 April 2008 av Mezox Citera Länk till kommentar Dela på andra sajter More sharing options...
Ozoon Skrivet 2 April 2008 Rapport Dela Skrivet 2 April 2008 antagligen genererar maskinen "random" genom att använda den interna klockan, de flesta konsoller har ju en sån, och lär då också köra på samma... Citera Länk till kommentar Dela på andra sajter More sharing options...
Mezox Skrivet 3 April 2008 Författare Rapport Dela Skrivet 3 April 2008 Okej, så det mesta handlar om tid då man genererar "slumpmässiga! tal... Det bodre isåfall inte vara så svårt att kontrollera vad du får... Citera Länk till kommentar Dela på andra sajter More sharing options...
PunkArne Skrivet 3 April 2008 Rapport Dela Skrivet 3 April 2008 Okej, så det mesta handlar om tid då man genererar "slumpmässiga! tal... Det bodre isåfall inte vara så svårt att kontrollera vad du får... Hur menar du med den sista frågan? Citera Länk till kommentar Dela på andra sajter More sharing options...
Simontheking Skrivet 3 April 2008 Rapport Dela Skrivet 3 April 2008 Han menar att om man känner till systemet så kan man tajma det numret som han vill ha. Citera Länk till kommentar Dela på andra sajter More sharing options...
Chainsawkitten Skrivet 3 April 2008 Rapport Dela Skrivet 3 April 2008 Det finns inga slumpmässiga tal. Jag vet <_< Men jag vill veta hur de "slumpmässiga" talen genereras... Det kallas Pseudorandom. pseudoslumpmässiga tal. Alltså, de försöker låtsas vara slumpmässiga. Det finns olika sätt att generera slupmässiga tal. Man kan ha en lång lista med tal. 321874543989844364564565 498454543446654645745745 432548596404305435605656 ... Sedan väljer man ett tal baserat på tiden som gått sedan vad det nu är... Ngt konstigt årtal. Då får man ett tal som typ 568936879064335689896443445. Problemet är att man oftast inte behöver ett så stort tal... Därför kan man använda modulo. rand() % 20 ger ett tal mellan 0 och 19. (Endast heltal, då det är restberäkning.) Han menar att om man känner till systemet så kan man tajma det numret som han vill ha.Inte så lätt... Det är ofta inte bara tid utan även annat som räknas med. T.ex. att två tal inte ska komma i rad (alltså är det inte så nära random...). Citera Länk till kommentar Dela på andra sajter More sharing options...
Rekommendera inlägg
Gå med i konversationen
Du kan skriva nu och registrera dig senare. Om du har ett konto, logga in nu för att posta med ditt konto.