Riješeno: math.random između 1 i 10

Računanje slučajnih brojeva može biti osnovni dio mnogih aplikacija, posebno u razvoju igara, statističkom modeliranju i simulacijama. Programski jezik Java pruža ugrađenu funkciju za generiranje takvih nasumičnih brojeva. Jedna funkcija je Math.random(), iako generiše dvostruke vrijednosti između 0.0 (uključivo) i 1.0 (isključivo). Za generiranje nasumičnih cijelih brojeva unutar određenog raspona kao što je od 1 do 10, potrebni su dodatni koraci. Ovaj članak se bavi kreiranjem nasumičnih brojeva između 1 i 10 u Javi pomoću Math.random().

Generiranje slučajnih brojeva pomoću Math.random()

Java-ina funkcija Math.random() vraća pozitivnu dvostruku vrijednost koja je veća ili jednaka 0.0 i manja od 1.0. Ove vrijednosti se generiraju pseudoslučajno, što znači da njihovo generiranje slijedi određeni algoritam, ali se korisniku čini nasumično.

double randomValue = Math.random();

Međutim, za generiranje cijelog broja između 1 i 10, ne možemo direktno koristiti Math.random(). Umjesto toga, moramo manipulirati dvostrukom vrijednošću koju vraća Math.random().

Metoda za generiranje nasumičnih cijelih brojeva između 1 i 10

Da bismo simulirali kreiranje slučajnog cijelog broja između 1 i 10, pomnožit ćemo rezultat Math.random() sa 10, dodati 1, a zatim baciti rezultat na cijeli broj (jer Math.random() vraća dvostruko) . Prevođenje na cijeli broj skraćuje decimalni dio, dajući nam na taj način cjelobrojnu vrijednost.

int randomInteger = (int)(Math.random() * 10 + 1);

Ovaj kod radi jer Math.random() daje vrijednost od 0.0 do nešto ispod 1.0. Kada ovo pomnožite sa 10, proteže se raspon od 0.0 do malo ispod 10.0. Dodavanje 1 pomjera ovaj raspon od 1.0 do malo ispod 11.0.

Korak po korak raščlanjivanje

Zaronimo dublje u kako kod radi:

1.

  • Poziva se funkcija Math.random() koja vraća pseudoslučajni duplikat veći ili jednak 0.0 i manji od 1.0.
  • Ova dvostruka vrijednost se zatim množi sa 10. Sada dvostruka vrijednost pada između 0.0 i 10.0, još uvijek manje od 10.0
  • Rezultatu dodajemo 1. Dvostruka vrijednost je sada između 1.0 i 11.0, još uvijek manja od 11.0.
  • Konačno, izvodimo uvođenje tipova da pretvorimo double u cijeli broj. Ovo skraćuje decimalni dio i dobivamo cijeli broj između 1 i 10.

Biblioteke i funkcije vezane za generiranje slučajnih brojeva

Pored Math.random(), Java nudi i druge načine za generisanje slučajnih brojeva kao što su klasa Random i klasa ThreadLocalRandom. Klasa Random obezbeđuje metode za generisanje pseudoslučajnih brojeva različitih tipova, kao što su int, double, long, float, Boolean, itd. Klasa ThreadLocalRandom obezbeđuje metode za generisanje pseudoslučajnih brojeva u istovremenim scenarijima.

Ugrađene funkcije i klase Jave nude sveobuhvatna rješenja za generiranje slučajnih brojeva, zadovoljavajući različite potrebe i aplikacije.

Slični postovi:

Ostavite komentar