Demo 10

Demoryhmä Päivä Aika Sali
Ryhmä 1 pe 5.7. 10.15 - 12.00 Ag B111.1
Ryhmä 2 pe 5.7. 16.15 - 18.00 Ag B111.1

Jokaisesta tehtävästä saa pisteitä seuraavasti:

1) Ohjelma lukee rivin tekstiä, sensuroi kaikki numerot (0, 1, …, 9) risuaita merkillä (#) ja tulostaa alkuperäisen ja muunnetun rivin. Lukeminen, muuntaminen ja tulostus tehtävä omissa funktioissa. Voit käyttää C- tai C++-kielen mukaisia merkkijonoja.

2) Kirjoita C++-ohjelma, joka lukee näppäimistöltä kirjan tiedot (kirjoittaja, kirjan nimi, painovuosi ja sivujen lukumäärä) ja tulostaa sitten nämä näytölle. Oletetaan, että kirjalla on vain yksi kirjoittaja. Merkkitieto talletetaan C++-kielen merkkijonoluokan mukaisiin string-muuttujiin. Hoida syöttö ja tulostus omissa erillisissä funktioissaan.

3) Tehtävä ohjelma, joka alla kuvatulla algoritmilla järjestää taulukon alkiot kasvavaan järjestykseen valintalajittelumenetelmällä ja tulostaa alkiot järjestyksessä.

Lue n.
Lue n kappaletta kokonaislukuja taulukkoon.
Toista seuraavaa kun i = 0,1,..., n-2.
    Etsi pienin alkio taulukosta väliltä i ... n-1.
    Tämä pienin ja paikassa i oleva alkio vaihtavat paikkaa.
Tulosta luvut järjestyksessä.

4) Kirjoita C++-ohjelma, joka lukee näppäimistöltä ensin tason pisteitä taulukkoon. Olkoon pisteiden koordinaatit kokonaislukupareja. Lukeminen lopetaan, kun syötetään piste (0, 0) tai taulukko täyttyy. Tämän jälkeen toistetaan seuraavaa niin kauan kunnes ohjelman käyttäjä haluaa lopettaa: luetaan suorakaiteen, jonka sivut ovat koordinaattiakselien suuntaiset, vasemman alanurkan ja oikean ylänurkan koordinaatit ja tutkitaan kuinka monta aluksi luetuista pisteistä on tämän suorakaiteen sisäpuolella. Reunaviivalla olevat pisteet katsotaan kuuluvaksi suorakaiteeseen. Pyri käyttämään pisteiden talletuksessa tietueita. Käytetään tietysti funktioita.

http://appro.mit.jyu.fi/2002/kesa/johdatusohjelmointiin/demot/demo10/index.html
© Juha Kajava () & Miika Nurminen ()
Perustuu osittain Hans Björnin kurssisivustoon ja teksteihin.
Viimeksi päivitetty: 7.05.2002 15:29:42