Helsingin yliopisto / Tietojenkäsittelytieteen laitos / Arto Wikla.

Ohjelmoinnin perusteet, kurssikoe 18.10.2011/AW

Kirjoita jokaisen vastauspaperisi alkuun kurssin nimi ja kokeen päivämäärä sekä nimesi, opiskelijanumerosi (tai henkilötunnuksesi) ja allekirjoituksesi. Jokainen vastaus (1, 2, 3) kirjoitetaan omalle arkilleen!


  1. Selitä lyhyesti ja täsmällisesti sekä anna havainnollisia ohjelmaesimerkkejä seuraavista käsitepareista. Älä viittaa vastauksessasi muiden tehtävien vastauksiin.

    1. taulukon indeksi ja taulukon alkio
    2. metodin määrittely ja metodin kutsu
    3. muodollinen parametri ja todellinen parametri
    4. konstruktori ja aksessori
    5. alkeistyyppi ja viittaustyyppi
                                                                                             (10 pistettä)
    

  2. Mehuautomaatissa on kaksi säiliötä: vesisäiliö ja mehutiivistesäiliö. Mehua valmistetaan sekoittamalla yksi osa tiivistettä ja yhdeksän osaa vettä. Ohjelmoi luokka Mehuautomaatti mehuautomaatin toteutukseksi. Konstruktori ja aksessorit tulkitsevat negatiiviset parametrien arvot nollaksi. Luokan API:

    Laadi myös pääohjelma, joka esittelee monipuolisesti Mehuautomaatti-olioiden luontia ja käyttöä. Tämän esittelyohjelman ei tarvitse eikä ole syytä lukea mitään tietoja käyttäjältä.

                                                                                             (10 pistettä)
    

  3. Tee ohjelma, joka kysyy ensin nimien lukumäärän ja sitten nimet yksi kerrallaan. Syötteet luetaan joko standardisyöttövirrasta tai ponnahdusikkunoin – voit päättää itse, kumpaa tapaa ohjelma käyttää. Ohjelman tehtävä on tulostaa luetut nimet standarditulosvirtaan String-luokan compareTo()-aksessorin antamassa "aakkosjärjestyksessä".
                                                                                             (10 pistettä)