Johdatus ohjelmointiin: koe 24.6.1998 (Avoin yo) (AW)

Kirjoita jokaisen vastauspaperisi alkuun kurssin nimi ja kokeen päivämäärä sekä nimesi, henkilötunnuksesi ja allekirjoituksesi. Jokainen tehtävä on 12 pisteen arvoinen.
  1. Selitä lyhyesti ja täsmällisesti:
         metodin paikallinen muuttuja (local variable)
         lause ja lauseke (statement and expression)
         parametri (parameter)
         kuormittaminen (overloading).
         pakkaus (package)
         poikkeus (exception)
    

  2. Ohjelmointikilpailussa on 20 osanottajaa. Kukin voi saada oikeellisuuspisteitä 0-50 ja tyylipisteitä 0-50 Lopputulokseen pisteet kerrotaan keskenään. Suurempi voittaa. Tee ohjelma, joka lukee kilpailijoiden nimet ja pisteet sekä tulostaa kilpailijoista luettelon sekä aakkosjärjestyksessä, että paremmuusjärjestyksessä.

    Älä tietoja syötettäessä hyväksy samaa nimeä toistamiseen. Näin siis hyväksytyt nimet ovat yksikäsitteisiä.

    Saman pistemäärän omaavat tulostetaan paremmuuslistalle aakkosjärjestyksessä. Saat tyytyä siihen 'aakkosjärjestykseen', joka syntyy String-arvoja vertaillen.

    Toteuta kilpailija luokkana Kilpailija, jossa muiden metodien ohella on metodit boolean isompiNimi(Kilpailija toinen) ja boolean isommatPisteet(Kilpailija toinen).

    Vihjeitä: Tee kilpailijoista taulukko. Järjestä se ensin nimien perusteella ja tulosta. Järjestä sitten pisteiden perusteella ja tulosta uudelleen. Pisteiden perusteella järjestäessäsi tee aakkosjärjestysvertailusta toissijainen vertailuperuste, so. jos pisteet ovat samat, vertaa nimiä.

  3. Selitä täsmällisen tarkasti mitä tarkoittavat luokan lataaminen ja olion luonti. Anna esimerkkejä, jotka selventävät ilmentymämuuttujien ja luokkamuuttujien eroa.

  4. Käytössäsi on luokka SyoTdsto syöttötiedoston lukemiseen. Luokalla on konstruktori:

    Luokassa on metodi rivin lukemiseen:

    Laadi luokkaa SyoTdsto käyttäen ohjelma, joka pyytää käyttäjältä syöttötiedoston nimen ja haettavan merkkijonon. Ohjelma tulostaa kuvaruudulle kaikki ne syöttötiedoston rivit, joilla esiintyy haettava merkkijono. Ohjelman ei tarvitse osata erottaa tilannetta, jossa tiedostoa ei ole lainkaan ja jossa tiedostossa ei ole ensimmäistäkään haettavaa merkkijonoa.