Helsingin yliopisto
/
Tietojenkäsittelytieteen
laitos
/
Ohjelmoinnin perusteet
/
Copyright © 2002
Arto Wikla.
581325-0 Ohjelmoinnin perusteet, kurssikoe 13.11.2002/AW
Kirjoita jokaisen vastauspaperisi alkuun kurssin nimi ja kokeen
päivämäärä sekä nimesi, henkilötunnuksesi ja allekirjoituksesi.
Jokainen vastaus kirjoitetaan omalle arkilleen!
- Vastaa lyhyesti ja täsmällisesti seuraaviin kysymyksiin:
- Mitä tarkoittaa metodin kuormittaminen? Miksi ja mihin sitä
käytetään?
- Milloin metodin muuttuja syntyy? Milloin se häviää?
- Mihin tarkoitukseen public String toString() -metodia käytetään?
Miten?
(12 pistettä)
- Lämpötilan maksimin ja minimin rekisteröintiin käytetään
laitetta MinMax. Laitteelle syötetään lämpötiloja ja siltä voidaan
milloin tahansa kysyä toistaiseksi korkeinta ja toistaiseksi
matalinta lämpötilaa. Kun laite otetaan käyttöön, se asettaa
molemmiksi lämpötiloiksi 0.0. Laite voidaan myös myöhemmin nollata.
Laitteelta voidaan kysyä, onko se alkutilassa vai voiko
sen ilmoittamiin lämpötiloihin luottaa.
Toteuta laite luokkana MinMax, jolla on konstruktorin lisäksi seuraavat
aksessorit:
- public void kirjaaLämpötila(double)
- public double minimi()
- public double maksimi()
- public void nollaa()
- public boolean kunnossa()
Huomaa että ensimmäinen rekisteröity lämpötila on sekä
"toistaiseksi korkein" että "toistaiseksi matalin".
(12 pistettä)
- "Olio, mikä hemmetin olio? Ja mitä ihmeen kapselointia?",
kysyy ystäväsi kuunneltuaan
tarinoitasi Ohjelmoinnin perusteet -kurssilta. Ystäväsi
on ohjelmoinut sen verran, että hän tuntee yksinkertaiset muuttujat,
lausekkeet, lauseet, metodit ja parametrit, mutta olio-ohjelmoinnista
hän ei tiedä yhtään mitään. Auta ystävääsi ymmärtämään,
mitä oliot ovat, miten niitä ohjelmoidaan ja käytetään, mitä hyötyä
ja iloa niistä voi olla.
Laadi siis asiasta kirjallinen selitys
(maksimipituus on 1 konseptiarkki). Muista että
esimerkit ja kuvat auttavat
oppimisessa. Vastauksen arvioinnissa otetaan huomioon
selostuksen ajateltu lukija. Älä siis kirjoita tarkastajalle,
joka jo osaa oliot, kirjoita tuolle ystävälle!
(12 pistettä)
- Toteuta seuraava palvelu vuorovaikutteisena ohjelmana:
Aamuisin ohjelmalle syötetään merkkijonoja (String-arvoja)
missä järjestyksessä milloinkin.
Merkkijonojen loppuminen ilmaistaan syöttämällä
loppumerkiksi "loppu".
Merkkijonoja ei ole koskaan tuhatta enempää.
Päivän mittaan usein kysellään oliko jokin
merkkijono (String-arvo) aamulla syötettyjen
merkkijonojen joukossa. Illalla ohjelma suljetaan
syöttämällä loppumerkiksi merkkijono "yötä".
Tehokkuussyistä merkkijonojen hakeminen on ohjelmoitava
binäärihaulla.
(14 pistettä)