java ohjelmointi teht. lottonumerot ja metodit 5kp

java-ohjelmointi

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
}

11

965

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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/mYJPGfwk

        Hieno 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

    1. Kyllä suoraan

      Sanottua vi.tu.taa. Miksi en toiminut silloin. Sama kun olisi heittänyt smagardin menemään.
      Ikävä
      69
      1900
    2. Voisitko nainen kertoa mulle

      Tykkäätkö sä musta, vai unohdanko koko jutun? Mä en viitti tulla sinne enää, ettei mua pidetä jonain vainoajana, ku sun
      Suhteet
      164
      1509
    3. Oisko jii-miehelle jollakin asiaa

      Jos vaikka on jäänyt joku asia sydämen päälle.
      Ikävä
      90
      1288
    4. Perustele miksi hän ei

      Ole sopiva sinulle
      Ikävä
      125
      1275
    5. Miehelle naiselta

      Ajattelen sinua aina, en jaksa enää. Ja luulin, että pidit minusta, mutta silloin olisit tehnyt jotain. Mutta sinä et te
      Ikävä
      49
      1200
    6. Iäkkäät asiakkaat ärsyttävät kaupoissa

      Miksei Kela järjestä palvelua, jolla toimittaisivat ostokset suoraan ikäihmisille? https://www.is.fi/taloussanomat/art-
      Maailman menoa
      270
      1009
    7. Mikä oli nainen

      Paras yhteinen hetkemme niistä pienistä ja vähäisistä.
      Ikävä
      75
      962
    8. Miksi sinulla, nainen

      On niin negatiivinen asenne minuun ja yleensäkin negatiivinen käsitys?
      Ikävä
      107
      925
    9. Olen syvästi masentunut

      En oikein voi puhua tästä kenenkään kanssa. Sillä tavalla että toinen ymmärtäisi sen, miten huonosti voin. Ja se että mi
      Tunteet
      109
      881
    10. Nainen, millainen tilanne oli

      kun huomasit ihastuneesi häneen oikein kunnolla. Missä tapahtui ja milloin
      Ikävä
      47
      733
    Aihe