Miert kell next?
Figyelt kérdés
Ha veletlen generalok szamot c#-ba minek kell x+rnd.next(n)
Mi ez a next?
2019. szept. 16. 16:07
1/7 anonim válasza:
A számítógépes véletlenszám generátorok többsége egy sorozat, ami egy seedről indul, tipikusan a rendszeridőről, majd egy algoritmus segítségével véletlennek látszó számok sorozatát kapod, a next() hívásával a következő elemet kéred le.
2/7 A kérdező kommentje:
Ezt nem ertem, mi azbhogy a kovetkezo elemet kerem le?
2019. szept. 16. 16:26
3/7 anonim válasza:
egy ÚJ véletlenül generált számot kérsz ezzel
4/7 anonim válasza:
Mert a next metódus ad vissza egy véleltlen számot és neked az kell.
5/7 anonim válasza:
Next() nélkül hogy képzelted a dolgot?
6/7 anonim válasza:
#2 Feltételezem, te úgy képzeled el a dolgot, hogy meghívod a randomot, és az kiköp egy véletlenszerű számot. A valóság viszont az, hogy a számítógépek világában nincs olyan, hogy véletlenszerű szám, minden érték, szám valamiből számítva van egy pontos algoritmus alapján. Éppezért számos nyelvben a randomgenerálás úgy működik, hogy a randomgenerátor kap egy ún. seed-et (ez sokesetben a rendszeridő, a lényeg hogy valami olyan legyen, ami változik), és ezt a seedet alapul véve, egy sor algoritmust lefuttatva előállít nem egy számot, hanem egyx számsorozatot, ahol a sorozat soron következő elemeit gyorsan ki tudja számolni. Amikor a next-et hivogatod, akkor lényegében a program előálíltja a sorozat következő számát. Hogy miért egy egész számsorozatot ad vissza? Javarészt azért, mert a randomgenerálás alapvetően költséges, és ha minden random számnál le kellene újra futtatni az algoritmust, az nagyban lassítaná a működését. Sokkal egyszerűbb, ha egy költséges inicializálás után az előző random számból előálíltja a következőt viszonylag gyorsan.
7/7 anonim válasza:
Kiegészítésként még leírnám, hogy mivel a random számsorozatok egy seed-ből vannak számolva, ezért ha ugyanazt a seed-et adod meg, akkor ugyanazokat a számokat fogod megkapni. Ezért fontos, hogy a seed olyasmi legyen, ami lehetőleg nem ismétlődik, olyan helyeken, ahol különösen fontos a biztonságos randomszámgenerálás külön célhardvert használnak erre a célra, például ami a környezeti hőmérsékletet veszi alapul rendkívül pontos értékekkel számolva, ezzel biztosítva a kiszámíthatatlan randomgenerálást.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!