Demo 2 - Tehtävät

Tehtävät

  1. Huoneessa on sähkövalaisin ja kytkin. Tee ohjelma, joka simuloi tätä tilannetta. Tarvitset huoneelle, kytkimelle ja valaisimelle komponentin, jonka voit toteuttaa esim. yhtenä luokkana. Huone ja kytkin voivat olla muuttumattomia, mutta valaisin tulee voida vaihtaa huoneen ja kytkimen muuttumatta. Vinkki: Kytkin käyttää valaisimen rajapintaa. Huone voi vaikka "kytkeä" valaisimen kytkimeen,eli välittää valaisinolion viitteen kytkinoliolle. (2p)
  2. Kytkin ja valaisin edellisessä huoneessa vaihdetaan älykytkimeksi ja -valaisimeksi. Kytkimeen syttyy vihreä valo, kun valaisimessa on valo. Jos valaisimen lamppu on palanut, vilkuttaa kytkin punaista valoa. Jollei valaisimessa ole valoa, on kytkin himmeän keltainen. Muokkaa edellisen tehtävän toteutuksesta uusia vaatimuksia vastaava toteutus (vinkki: takaisinkutsu). (4p)

Toteuta tehtävät valitsemallasi ohjelmointikielellä. Käyttöliittymäksi kelpaa vallan hyvin tekstipohjainen liittymä, mutta halutessasi voit tehdä myös graafisen käyttöliittymän. Tuotokselle on hyvä paikka kurssin tracissa

https://svn.cc.jyu.fi/srv/svn/ties441/oa2011/demot/demo2
. Tee tuon alle oma hakemisto, johon voit tallentaa ohjelmasi.

Demohyvitys

Ensimmäiseen osallistumaansa tenttiin saa demohyvityksen. Demohyvitys lasketaan jakamalla demoista saatujen pisteiden määrä demokertojen määrällä. Maksimi hyvitykselle tulee siis olemaan kuusi pistettä.