Olio-ohjelmointi
Kertaustehtäviä, 1. välikoealue
1. Tee ohjelma, joka tulostaa lemmikkieläimen vakuutusmaksun seuraavien sääntöjen mukaisesti:
• Leikattu koira maksaa 50€
• Leikkaamaton koira maksaa 80€
• Leikattu kissa maksaa 40€
• Leikkaamaton kissa maksaa 60€
• Lintu tai matelija ei maksa mitään
• Mikä tahansa muu eläin aiheuttaa virheilmoituksen
Ohjelman tulee kysyä käyttäjältä tarvittavat tiedot valikkorakenteessa siten, että A tai a on koira, B tai b on kissa, C tai c on lintu ja D tai d on matelija. Tulostettuaan vakuutusmaksun, ohjelma kysyy, halutaanko vakuuttaa toinen eläin.
2. Tee ohjelma, joka laskee käyttäjän syöttämien lukujen summan, keskiarvon sekä pienimmän ja suurimman arvon. Älä käytä ratkaisussa taulukkoa.
3. Kirjoita ohjelma, joka arpoo 100 lukua väliltä (0,1]. Ohjelma laskee montako luvuista oli välillä (0,0.5] ja montako välillä (0.5,1].
4. Tee ohjelma, joka kysyy käyttäjältä 5 lukua STL:n vektoriin ja tulostaa ne käyttäen iteraattoria.
5. Tee STL-vektoria käyttävä ohjelma, joka kysyy käyttäjältä lukuja kunnes syötetään 0. Ohjelma laskee lukujen mediaanin ja keskiarvon. Mediaani on järjestetyn lukujoukon keskimmäinen luku.
6. Tee yksinkertainen Blackjack- eli venttipeliohjelma. Pelin säännöt ovat seuraavat:
• Pelaaja ja tietokone pelaavat vastakkain
• Ensin arvotaan kortit pelaajalle ja sitten tietokoneelle.
• Tietokone arpoo lukuja väliltä 1 – 13.
• Arvotut luvut summataan yhteen
• Lukujen 10, 11, 12 ja 13 arvo summauksessa on 10.
• Luku 1 voi olla joko 1 tai 14. Jos arvottu kortti on 1, tietokone kysyy, onko kortin arvo 1 vai 14.
• Jokaisen arvonnan jälkeen tietokone kysyy pelaajalta, haluaako pelaaja uuden kortin vai jääkö pelaaja kyseiseen summaan.
• Pelaajan jälkeen tietokone arpoo kortit itselleen.
• Se, jonka korttien summa on lähempänä lukua 21, voittaa.
Tasapelin sattuessa tietokone voittaa.
• Jos lukujen summa menee yli 21:n pelaaja tai tietokone häviää automaattisesti.