Az alábbi feladatokat hogyan tudnám megoldani Java programozásban?
Készítsünk programot, amely kiír egy hatoslottón megjátszható számot!
Itt a lényeg végül is az lenne hogy 5 változó létrehozásával randomba írjak ki 5 számat 1 és 45 között, az addig egyszerű, de hogyan tudom kizárni azt, hogy egyik változó sem legyen egyenlő a másikkal illetve akár az 5 számot növekvő sorrendbe rendezni?
Másik: Készítsünk programot, amely kiír egy véletlenszerűen generált háromjegyű páros számot!
Ezzel teljesen meg vagyok lőve :)
1, A feladat kulcsa, hogy nem 5 külön változó kell, hanem valamilyen adatstruktúra, pl tömb. Máris nem kihívás ellenőzni, hogy milyen számok vannak benne és újat húzni, ha éppen van ismétlődés.
2, No comment, ehhez csak a Random osztály dokumentációját kell megnézni, ezt akkor nem tudod megcsinálni ha eleve nem is akarod.
A másik lehetőség, hogy feltöltesz egy tömböt egytől negyvenötig sorban a számokkal és ráengeded a Collections.shuffle() metódust a java.util csomagból. Az első öt elemet veszed, mint kihúzott számot.
Köszönöm a segítséget, valóban kézenfekvőbb lett volna már az elején a tömb megoldásra gondolni (nagyon az elején vagyok...:) ), így sikerült megoldani:
int[] nyeroszamok=new int[5];
for (int i = 0; i < nyeroszamok.length; i++) {
nyeroszamok[i]=rnd.nextInt(45)+1;
}
Arrays.sort(nyeroszamok);
System.out.println("A nyerőszámok:"+Arrays.toString(nyeroszamok));
A második feladattal viszont továbbra is bajban vagyok, annyiban kérhetek segítséget hogy milyen irányba induljak el? :)
Ha az elsőt sikerült megatalálni valahol akkor a másodikat is sikerül majd :D
Amúgy hibás az első: a Random osztály nincs péládnyosítva, ismétlést nem ellenőriz
A második: int x= (int) (Math.random*899)+100;
If(x % 2 == 0)
Itt pedig vagy kiiratod az x-et vagy tömbe rakod.
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!