Tehetséggondozás az informatikában
A véletlen számokról
A kísérleti feladatok számítógépes szimulációja során a véletlen számokat
függvény segítségével állítjuk elő. Ezek a függvények az előző feladatok
során a nagyszámú minta esetén a várakozásnak megfelelően működtek. De
mennyire „véletlenek” valójában? Milyen algoritmussal állítjuk elő ezeket a
számokat?
„Bárki, aki aritmetikai módszerekkel akar előállítani egy véletlen számot, a
bűn állapotában leledzik.” (Neumann János)
A véletlen számok különböző előállítási módszereiről sok helyen olvashatunk
(pl.
Lovász
László: Véletlen vagy álvéletlen,
Horváth Bálint:
Véletlenszám generátorok és tesztelésük,
Ruzsinszki
Gábor: Véletlenszámok generálása.
Arról azonban nehezebb információt találni, hogy az egyes programozási
nyelvek vagy táblázatkezelő programok milyen algoritmussal állítják elő a
véletlen számokat.
Visual
Studio c#
FreePascal
Python
Excel
A következőkben a véletlen számok egyenletes eloszlását egyszerű grafikus programokkal szemléltetjük.
Programozási nyelvekben
A programozási nyelvekben látványosan a grafikus ablakban lehet szemléltetni a véletlen számok egyenletes eloszlását.
Véletlen pontok
Az első program egy grafikus ablakban véletlenszerűen helyez el pontokat (az
egyszerűség kedvéért fekete háttéren fehér pontokat). A program C# és
FreePascal nyelven készült el, a programok futása során kapott néhány
képernyőképpel szemléltetjük az eredményeket.
Mindkét program egyenletesen, véletlenszerűen tölti be a pontokkal a képernyőt.