Demo 8 / 8.11
Tehtävät
V1.
Tee
Ville-tehtävät: 5.7, 5.9, 5.10, 5.12, 5.13.
double[] luvut = kysyLuvut("Anna kolme lukua","luku",3,1);
kyselisi käyttäjältä tyyliin:
Anna kolme lukua
1. luku>3.2[ret]
2. luku>2.1[ret]
3. luku>5.9[ret]
Viimeinen parametri säätää sen, mikä on ensimmäisenä kysyttävän luvun järjestysnumero.
2.
M: 14. Taulukot: Tee edellisen tehtävän aliohjelmaa käyttäen ohjelma, joka kysyy käyttäjältä kuuden kuukauden keskilämmöt (kuut 1-6) ja piirtää niistä kuvan niin, että alle nollan olevat kuut piirretään vihreällä ympyrällä ja yli 10 asteen kuut piirretään punaisella ympyrällä. Kuusi kuukautta siksi, että kukaan ei jaksa testata syöttämällä 12 kuukauden tulokset. Ohjelma pitää kuitenkin olla helposti muutettavissa 12 kuukauden versioksi.
5.
M: 13. Ehtolauseet: Tee totuusarvoinen funktio
karkausvuosi(vuosi), joka palauttaa tosi jos
vuosi on karkausvuosi. Karkausvuosia ovat neljällä jaolliset vuodet paitsi neljällä jaottomat vuosisadat (esim. 1900 ei ollut karkausvuosi). Mieti aluksi kunnon testiohjelma (esim. ComTestillä).
7.
Tee ohjelma, joka kysyy käyttäjältä oikean käden nuotit ja sen jälkeen laittaa ne soitettavaksi
BufferedMidiPlayer2 -soittimelle. Ennen soittamista nuoteista otetaan kopio, lisätään nuotit toiseen trackiin ja muutetaan kopio soitettavaksi otaavia alempaa selvästi eri soittimella. Muunnos tehdään samalla tavalla kuin Demo 7:n vastaavassa tehtävässä. Ks.
http://users.jyu.fi/~vesal/kurssit/ohj1/music/ dokumentaatio ja sieltä erityisesti
BufferedMidiPlayeringetTrack ja
getCopyOfNotes sekä
NoteTrack-luokan add -metodit.
B1-2.
M: 15. Toistorakenteet, 13. Ehtolauseet: Katso kuvaa
jakajat.png. Siinä on kuvattu lukujen jaollisuutta niin, että kunkin x-pisteen (kokonaisluku) kohdalle on piirretty ympyrä jos luku on jaollinen vastaavalla y-arvolla (kokonaisluku). Mikäli luku on alkuluku (jaollinen vain itsellään ja 1
:llä), on sen kohdalle piirretty vihreä viiva. Tee ohjelma joka piirtää vastaavan kuvan. Vinkki: piirrä ensin itse käsin vastaavaa kuvaa ja mieti mitä teet.
GURU-tehtävät
G1-2.
Tee Hirsipuu -pelistä versio, joka tulostaa hirsipuun vaiheita tekstinä komentoriville tyyliin:
Naru alkaa häämöttämään...
...
Kohta roikut...
Koita päästä mahdollisimman hyvään muokattavuuteen.
G3-4.
Tee graafisesti hirsipuupelistä (ks. tehtävä 6) versio, jossa on pieninä nappuloita jokainen mahdollinen arvattava kirjain ja sitä mukaa kun niitä painetaan, ne muuttuvat harmaiksi. Nappulat kannattaa laittaa paneliin, jossa on
GridLayout.