onko liikkeellä Java-neroja?
Seuraava tehtävä pitäisi ratkaista:
Tee metodeja hyödyntäen ohjelma, joka tarkastaa lotto-rivisi. Ohjelma kysyy oman lottorivisi (7 numeroa väliltä 1-39) ja sijoittaa sen yksiulotteiseen taulukkoon. Ohjelma arpoo oikean rivin (7 numeroa väliltä 1-39) ja sijoittaa sen toiseen yksiulotteiseen taulukkoon. Lopuksi ohjelma tarkistaa rivin ja tulostaa oikeiden numeroiden määrän. Huom! Rivit eivät saa sisältää samaa numeroa useaan kertaan.
Ohjelma voisi sisältää esimerkiksi seuraavat metodit:
- Metodi, joka syöttää oman rivin.
- Metodi, joka arpoo oikean rivin.
- Metodi, joka tarkastaa, ettei rivi sisällä samoja numeroita.
- Metodi, joka tarkastaa oikeiden numeroiden määrän ja tulostaa sen.
- Metodi, joka tulostaa rivit.
Olen saanut tehtävän alkuun:
class H3
{
public static void main(String[] args)
{ int[] oikeaRivi = new int[7];
int[] lottonumerot = new int[7];
int [] oikeaRivi=0;
for(int i=0;i<lottonumerot.length;i )
{
int luku=Lue.kluku();
lottonumerot[i]=luku;
System.out.println("Anna 7 lukua valilta 1-39.");
boolean [] samojentarkistustaulu=new boolean [40];
nollaa(samojentarkistustaulu);
while (samojentarkistustaulu[luku])
{
System.out.println("Et voi antaa kahta samaa lottonumeroa.");
luku = pyydaLuku (1, 39, "Anna" i " . lottonumerosi:");
}
}
System.out.println("Rivisi oli ");
for (int i=0; i < lottonumerot.length; i )
{
System.out.println(lottonumerot[i] " ");
}
System.out.println();
oikeaRivi = arvonta();
System.out.println("Oikea arvottu rivi oli: " oikeaRivi);
}
public static int arvonta() //1.metodi, joka syottaa oman rivin
{
int[] oikeaRivi =1 (int)(Math.random() * 7);
return int oikeaRivi;
}
public static int arvonta() //2. metodi, joka arpoo oikean rivin
public static int arvonta()//3. metodi, joka tarkastaa ettei ole samoja numeroita
public static int arvonta()//4. metodi, joka tarkastaa oikeiden numeroiden maaran ja tulostaa sen
public static int arvonta()//5.metodi, joka tulostaa rivit
}
java ohjelmointi teht. lottonumerot ja metodit 5kp
11
1219
Vastaukset
- javaapua
Haloo
- maisteri_Julmio
Teepä itse koulutehtäväsi.
- irvoin.arvoin
Ei ole mitään käsitystä javasta, mutta ainakin arpomisen tekisin listan avulla, jos javassa voi sellaisen tehdä.
Eli ensin tekisin 39 alkiota sisältävän listan, jossa olisi luvut 1-39.
Sitten arpoisin luvun väliltä 1-39, ja ottaisin lukeman kohdalta listan sisällön tuloksiin ja poistaisin kyseisen alkion listasta. Sen jälkeen arpoisin luvun väliltä 1-38 ja taas sama homma. Ja tätä jatkettaisiin kunnes on kaikki 7 arvontaa tehty. - jaffa-ohjelmointi
Onpa täällä huono palvelu. Made-palstalla tulee valmis vastaus tuota pikaa.
- tentissä-kilautetaan
Karhunpalvelus opiskelijalle. Kenelle opiskelija aikoo kilauttaa tentissä?
Minkä takia et käyttäisi numeroiden tilastointiin 40-alkioista boolean-taulukkoa, ja antaisit aina numerollesi true-arvon, kun numero arvotaan, jne. Ja sitten tarkistus, että uutta numeroa arvotaan niin kauan, että sitä ei ole vielä arvottu. Tämä estää duplikaattien arpomisen. Lisäksi oikein osuneiden tarkistus on helppo toteuttaa tässä mallisani.
Lisäksi tuosta aloittajan koodista sinun käy ilmi, että olet ohjelmoinnin ykköskurssilla ilmeisesti, kun käytät tuota opettajien laatimaa "Lue" -luokkaa hyödyksi. Opettele ottamaan syötteitä jatkossa vastaan komentoriviltä, tai käyttäjän syötteenä.- kehitäparempi
Tuohan on ihan perse idea. Eihän lotossa oikeastikaan voi arpoa samaa palloa moneen kertaan.
- Eiarvotakaan
kehitäparempi kirjoitti:
Tuohan on ihan perse idea. Eihän lotossa oikeastikaan voi arpoa samaa palloa moneen kertaan.
Koska kutakin palloa on vain yksi, arvottu pallo on merkittävä jo arvotuksi, jotta se ei tule uudelleen. Ei ole merkitystä, millä keinolla tuplanumerot vältetään. Voisihan palloja kuvata myös taulukolla, jonka kokoa pienennetään poistamalla siitä arvottu numero jne.
- Iggy.Loop
Eiarvotakaan kirjoitti:
Koska kutakin palloa on vain yksi, arvottu pallo on merkittävä jo arvotuksi, jotta se ei tule uudelleen. Ei ole merkitystä, millä keinolla tuplanumerot vältetään. Voisihan palloja kuvata myös taulukolla, jonka kokoa pienennetään poistamalla siitä arvottu numero jne.
Melkoista luuppia tässä jauhetaan:
"uutta numeroa arvotaan niin kauan, että sitä ei ole vielä arvottu."
Parempi tapa on ottaa mallia tosielämästä. Tehdään ensin lottonumeroista lista ja poimitaan sieltä satunnaisessa järjestyksessä yksi kerrallaan haluttu määrä numeroita pois.
Sutasin äkkiä Pythonilla esimerkin: http://pastebin.com/mYJPGfwk - Se-tekee-joka-osaa
Iggy.Loop kirjoitti:
Melkoista luuppia tässä jauhetaan:
"uutta numeroa arvotaan niin kauan, että sitä ei ole vielä arvottu."
Parempi tapa on ottaa mallia tosielämästä. Tehdään ensin lottonumeroista lista ja poimitaan sieltä satunnaisessa järjestyksessä yksi kerrallaan haluttu määrä numeroita pois.
Sutasin äkkiä Pythonilla esimerkin: http://pastebin.com/mYJPGfwkHieno homma.
Linux Mint 18 Sarah
Xfce 64-bit
- badbadbad
Korpeaa se, että nykyään kahden ylimmän voittoluokan voitot menevät aina porukoille! Hyvä peliyhtiö, antakaa myös yksittäisten nettipelaajien saada päävoittoja!!
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Taitaa jäädä kotimaiset mansikat ostamatta
Kotimainen mansikka on niin kallista, että en ole vielä ainuttakana maistanut. Jos hinta pysyy näin korkealla niin tästä792322Sinkkumiehet hukkaavat tärkeän ässän hihastaan kun
...eivät suostu kavereiksi naisten kanssa. Mikä voi olla heillä syynä? Hyväksyvät vain naisen, joka suorastaan anelee sa1371481- 1331452
- 1541193
- 1081013
"Kaikkien miesten asia" - kampanja on alkanut
Miehillä on naisiin kohdistuvan väkivallan lopettamisessa merkittävä rooli. Ei riitä, ettei itse tee väkivaltaa. Miesten373927Tiedät, että en voi enää laittaa viestiä
Aikaa kulunut. Eikä se näyttäisi enää luontevalta vastata näin pitkän ajan jälkeen. Tiedän myös, että sinä et enää lait82774Lautakunta käsittelee Iisalmen kulttuuri- ja vapaa-aikajohtajan virkasuhteen purkua koeajalla:
Lautakunta käsittelee Iisalmen kulttuuri- ja vapaa-aikajohtajan virkasuhteen purkua koeajalla: "Aina valinta ei mene nap55724Lienee aika luopua siitä kaikesta
mitä meillä ikinä olikaan. Hassua, koska juuri mitään ei ole edes ollutkaan. En vaan jaksa tätä mahdotonta juttua enää j67684Kun kohtaatte rakkauden, tarttukaa siihen
Toimisinko jälkiviisaana toisin? Varmasti. Vaikka silloin kuvittelin tekeväni, niin kuin on oikein. Mahdollisimman siist50683