Ruby

Kertausta

Tehtävä 1

Huom. Ota pohjaksi, joku aiemmin tehty ohjelma ja muutenkin kopioi vanhoista ohjelmista sopivia osia tähän ohjelmaan.

Tee ohjelma, joka

1. Tulostaa ensin näytölle tervehdyksen
2. Kysyy käyttäjältä tietotekniikan numeroa
3. Jos numero on
  • 5, ohjelma tulostaa "Saatat siis erottaa tietokoneen ompelukoneesta."
  • 6, ohjelma tulostaa "Et ole vielä ihan hakkeri."
  • jne. Keksi itse kommentit kymppiin saakka
  • yli 10, niin ohjelma tulostaa "Vastauksesi ei kelpaa."

4. Jos käyttäjä ei anna mitään numeroa 4 - 10, niin tulosta käyttäjälle joku virheilmoitus
5. Laita ohjelmaa kommenttirivejä (kommenttirivi alkaa # -merkillä), joissa kuvataan ohjelman toimintaa
6. Jos käyttäjä antoi luvun 4 - 10, niin ohjelma tulostaa käyttäjälle:
"Kiitos vastauksestasi!"
7. Lopuksi tulostetaan toitotus: "Hauskaa kevättä ja mukavaa kesälomaa!"


Tehtävä 2

Tee ohjelma sakko.rb, joka valitsee satunnaisesti luvun väliltä 0 – 100 ja tulostaa

  • Et saanut sakkoa” , jos nopeus ≤ 50
  • Sait sakkoa 50 euroa” , jos 50 < nopeus ≤ 60
  • Sait sakkoa 100 euroa.” , jos nopeus > 60

Satunnaisluvun väliltä 0 – 100 saat näin: nopeus = rand(100)




While-lause -tehtävät


  1. Tee ohjelma nimellä while1.rb, joka tulostaa näytölle allekkain luvut 0 - 10. Käytä while-lausetta.

  2. Tee ohjelma nimellä while2.rb, joka tulostaa näytölle allekkain parilliset väliltä luvut 0 - 20. Käytä while-lausetta.
  3. Tee ohjelma nimellä while3.rb, joka tulosta näytölle allekkain lukuja siihen saakka, että niiden summa ylittää luvun 30. Käytä while-lausetta.

Palauta tekemäsi tehtävät pedanettiin.

If - elsif - else -harjoitus

Tee ohjelma nimellä huutokauppa.rb, jossa käytät if - elsif - else -rakennetta. Kopioi pohjaksi elsif.rb -tiedosto. Ohjelman idea on seuraavanlainen:
  1. Ohjelma tulostaa käyttäjälle esim. "Minulla on myytävänä mopo Suzuki PV -92 jne. Kerro kuinka paljon tarjoat tästä, niin katsotaan tuleeko kaupat."
  2. Jos käyttäjä vastaus on välillä 0...400, niin ohjelma tulostaa jotain että "Etsi moposi muualta..." tms.
  3. Jos tarjous on enemmän kuin 400, mutta korkeintaan 700, niin ohjelma tulostaa vaikka "Ihan asiallinen tarjous. Aletaan hieromaan kauppoja..."
  4. Jos tarjous on enemmän kuin 700, niin ohjelma tulostaa esim. "Sovittu. Milloin tulet hakemaan mopon? Minulla olisi huippuhyvä polkupyöräkin myynnissä... "

Arvaus.rb

Arvauspeli

  1. Ota kopio jostain vanhasta ohjelmasta, jossa kysytään käyttäjältä lukua (ja jossa käytetään if-lausetta)
  2. Anna uuden ohjelma nimeksi rb
  3. Muokkaa ohjelmaa niin, että se kysyy käyttäjältä ”Anna luku 1, 2, 3, 4 tai 5. Jos arvaat oikein, saat palkinnon.
  4. Päätä, että esim. luku 2 on oikea vastaus.
  5. Tutki käyttäjän antamaa lukua if-lauseella. Jos se ei ole yhtä suuri kuin 2, niin ohjelma ilmoittaa käyttäjälle esim. ”Arvasit väärin. Hävisit.”
  6. Jos käyttäjä arvasi oikein, niin tulosta näytölle esim. teksti ”Onneksi olkoon! Olet voittaja! Tässä on palkintosi!” ja palkinnon kuva (katso alla).
  7. Anna kaverisi testata ohjelmaa.

palkinto.jpg

Arvauspeli 2

Arvauspeli 2

  1. Ota kopio tiedostosta arvaus.rb ja nimeä se arvaus2.rb
  2. Tee ohjelmaan lisäominaisuus, että jos käyttäjän ensimmäinen arvaus on väärin, niin ohjelma kysyy käyttäjältä oikeaa lukua toisen kerran "Huti meni, mutta arvaappa vielä uudestaan."