581325-0 Ohjelmoinnin perusteet, koe 13.6.2001/AW (Avoin yliopisto)

Kirjoita jokaisen vastauspaperisi alkuun kurssin nimi ja kokeen päivämäärä sekä nimesi, henkilötunnuksesi ja allekirjoituksesi. Jokainen vastaus omalle arkilleen!
  1. Laadi vuorovaikutteinen eli keskusteleva sovellus nopeuksien laskemiseen, kun matka annetaan kilometreinä ja aika tunteina. Nopeus lasketaan kaavalla: nopeus = matka/aika. Ohjelma pyytää tiedot käyttäjältä ja tarkistaa tietojen järkevyyden. Ohjelmalla voi yhdellä suorituskerralla laskea useita nopeuksia.
                                                               (12 pistettä)
    
  2. "Mitä ihmettä nuo metodit oikein ovat?", parahtaa ystäväsi kuunnellessaan tarinoitasi Ohjelmoinnin perusteet -kurssilta. Ystäväsi on ohjelmoinut sen verran, että hän tuntee yksinkertaiset muuttujat, lausekkeet ja lauseet. "Mitä peijakkaan 'parametreja', kuka 'kutsuu' ja ketä, miksi?, hän jatkaa toivottomana. Auta ystävääsi ymmärtämään, mistä oikein on kysymys. Laadi siis asiasta kirjallinen selitys (enimmäispituus 1 konseptiarkki). Muista että esimerkit auttavat oppimisessa. Vastauksen arvioinnissa otetaan huomioon selostuksen ajateltu lukija. Älä siis kirjoita tarkastajalle, joka jo tuntee asian, kirjoita tuolle ystävälle!
                                                                (14 pistettä)
    
  3. Eräs viljavarastotyyppi muodostuu kahdesta viljasiilosta. Vain ensimmäinen siilo on varustettu lastauslaittein. Viljaa voidaan siirtää siilosta toiseen. Laadi luokka Viljavarasto viljavaraston toteutukseksi. (Älä käytä PikkuVarasto-olioita.)

                                                               (12 pistettä)
    

  4. Toteuta seuraava palvelu vuorovaikutteisena ohjelmana: Aamuisin ohjelmalle syötetään tuhat kokonaislukua missä järjestyksessä milloinkin. Päivän mittaan aika usein kysellään oliko jokin luku aamulla syötettyjen lukujen joukossa. Illalla ohjelma suljetaan. Tehokkuussyistä lukujen hakeminen on ohjelmoitava binäärihaulla.
                                                               (12 pistettä)
    
Aurinkoista ja lämmintä kesää!