Helsingin yliopisto / Tietojenkäsittelytieteen laitos / Ohjelmoinnin perusteet / Copyright © 2006 Arto Wikla.

581325-0 Ohjelmoinnin perusteet, kurssikoe 16.10.2006/AW

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


  1. Selitä lyhyesti ja selkeästi käsitteet muuttujan tyyppi, parametri, kapselointi, new-ilmaus, toString()-metodi, indeksi.
                                                                    (18 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. Säiliöitä ei toteuteta PikkuVarasto-oliona!)

    Laadi myös pääohjelma, joka esittelee ja havainnollistaa konstruktorin ja aksessoreiden käyttöä.

                                                                    (16 pistettä)
    
  3. Tee ohjelma, joka ensin kysyy syötettävien kokonaislukujen lukumäärän, pyytää yksi kerrallan tuon määrän lukuja ja sijoittaa ne yksitellen taulukkoon. Luettuaan luvut ohjelma tarjoaa seuraavan palvelun:

    Ohjelmalta kysytään lukuja yksi kerrallaan ja ohjelma selvittää, löytyykö luku taulukosta. Etsimiseen on käytettävä binäärihakua. Kaikkien syöttölukujen on oltava arvoltaan välillä 1-100000, paitsi kyselyiden loppuminen ilmaistaan syöttämällä kysytyksi luvuksi luku 0.

    Saat olettaa, että kaikki syötteet annetaan kelvollisina kokonaislukuina. Syöttölukujen arvot on kuitenkin tarkastettava ja mahdollisista virheistä ilmoitettava.

                                                                    (16 pistettä)