Átlagosan mennyi időnként találunk négyzetszámokat? Folyt. Köv.
1 milliárd számítógép mindegyike átlag 100 milliószor végzi a FELADATot mp-ként, ami a következő:
Generál egy pontosan 64 (decimális)számjegyű véletlen számot, majd ellenőrzi, hogy négyzetszám-e. Ha igen: TALÁLAT.
Kérdés: fent.
Tehát van 9*10^63-on számunk, tehát
floor(sqrt(9*10^63)) = 94868329805051379959966806332981 = 9,4868329805051379959966806332981 * 10^31
négyzetszámunk van (a floor az alsó egészrészt, az sqrt a négyzetgyököt jelöli).
1 milliárd számítógép az 10^9
100 millió feladat/s az 10^8
Tehát összesen 10^9*10^8=10^17 keresés fog történni másodpercenként.
Ha
9*10^63-on számból 9,4868329805051379959966806332981 * 10^31 találat van,
akkor 10^17 számból (10^17*9*10^31)/9*10^63 = 1*10^-15 találat lesz.
Tehát hogy egy találat legyen 10^15 másodpercnek kell eltellnie (10^32 szám ellenőrzése során).
Folyt köv:
Persze természetesen feltételezve, hogy minden egyes véletlenszám-generálásnál más és más számot kapunk. ;)
De egyébként a kapcsolódó kérdéseknél fel lett már téve ez a kérdés:
http://www.gyakorikerdesek.hu/tudomanyok__termeszettudomanyo..
"Szóval a következtetés, hogy gyakorlatilag SOHA nem találnának egyetlenegyet sem, hiába a sok, gyors gép!?"
Nem ezt mondtam.
Hanem hogy ennyi időre lenne szükség átlagosan.
Lehet hogy szerencsénk van, és az első 100000-et megtalálnánk az első másodpercekben majd egy csomó ideig semmit, majd megint találunk 1000-et, és így tovább... ;)
Ha átlagosan 42 millió évente 1, akkor annak a valószínűsége, hogy 1 év alatt 1, 1:42000000.
Tehát kb. akkora mint hogy lottó ötöst nyerek, ha minden évben veszek 1 szelvényt. Ez kb. ~ soha.
Az utolsó kommentem nem jó:
"Ha átlagosan 42 millió évente 1, akkor..."
KEVESEBB. Nem biztos, hogy lesz találat.
Annak a valószínűsége, hogy 42 millió év alatt 0,1,2,...100000 találat lesz:
1/e (36,8%), 1/e, 1/e/2, 1/e/100000! lesz.
Tehát a 100000 találat (átl.420év) még a 42 millió év alatt is kvázi lehetetlen - nem hogy emberöltő alatt.
Csináltam egy kis alkalmazást:
a szövegmezőbe megadsz egy számot, és megnyomod a "Számol!" gombot.
Alatta megjelenik:
- a szövegmezőben megadott szám
- az abból előállítható négyzetszámok száma
majd egy táblázat, amely tartalmazza:
- a művelet idejét (t)
- a művelet sorszámát (#)
- az ellenőrizendő számot (Szám)
- és ha az ellenőrizendő szám négyzetszám (Négyzetszám?), akkor egy négyzetgyök-jel: √
Elég hamar lesz egy találat...
Kipróbáltam. De amikor 20 jegyű számmal próbáltam: Out of memory.
Ha próbáltad kb. 64 jegyű (vagy hasonló) számmal, kérlek oszd meg a tapasztalatokat!
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!