Helsingin yliopisto / Tietojenkäsittelytieteen laitos / Ohjelmoinnin perusteet


Kertauskysymyksiä Ohjelmoinnin perusteet -kurssille

(Muutettu viimeksi 28.10.2004)

Tällä sivulla on joukko hyödyllisiä kysymyksiä ohjelmoinnin ja Javan perusteista. Kysymykset ovat peräisin kevään 2004 kurssilta ja ne on laatinut Joni Salmi. Kysymysten avulla voi testata tietojaan ja ymmärrystään. Vastaukset löytyvät kurssimateriaalista sekä luennoilla ja harjoituksissa hankitusta ymmärryksestä.

Jos näihin osaa vastata, niin hyvä, hyvä, jos ei niin voi, voi...

Totta vai tarua?

  1. Kommentit ovat turhia kääntäjälle.
  2. Kommentit ovat turhia.
  3. Ohjelmakoodin sisentäminen on turhaa kääntäjälle.
  4. Ohjelmakoodin sisentäminen on turhaa.
  5. Arvolla on aina tyyppi.
  6. Muuttujalla on aina tyyppi.
  7. Muuttujaan on aina sijoitettu arvo.
  8. Arvo on aina sijoitettu muuttujaan.
  9. Muuttujan voi esitellä sijoittamatta siihen arvoa.
  10. Esittelemättömään muuttujaan voi sijoittaa arvon.
  11. 3.14 on arvo.
  12. 3.14 on tyyppi.
  13. 3.14 on muuttuja.
  14. Kokonaisluku on arvo.
  15. Kokonaisluvulla on arvo.
  16. Kokonaisluku on tyyppi.
  17. Kokonaisluvulla on tyyppi.
  18. Kokonaisluku on muuttuja.
  19. Kokonaisluvulla on muuttuja.
  20. Kokonaislukutyyppinen muuttuja voi saada arvokseen kokonaislukutyyppisiä muuttujia.
  21. int-tyyppisen muuttujan arvo voi olla negatiivinen.
  22. double tarkoittaa kaksoistarkkuuden liukulukutyyppiä.
  23. double-tyyppisen muuttujan arvo voi olla negatiivinen.
  24. Kaksoistarkkuuden liukuluku on suunnilleen sama asia kuin desimaaliluku.
  25. Totuusarvoinen muuttuja voi saada arvokseen vain luvun nolla tai yksi.
  26. Lausekkeilla on aina totuusarvo.
  27. Lausekkeilla on aina arvo.
  28. Lausekkeilla on aina tyyppi.
  29. Lausekkeet ovat muuttujia.
  30. Muuttujat ovat lausekkeita.
  31. Lauseilla on aina totuusarvo.
  32. Lauseilla on aina arvo.
  33. Lauseilla on aina tyyppi.
  34. Lauseet ovat muuttujia.
  35. Muuttujat ovat lauseita.
  36. Lause voi sisältää lohkoja.
  37. Lohko voi sisältää lauseita.
  38. Lause voi sisältää lauseita.
  39. Lohko voi sisältää lohkoja.
  40. Sijoituslause voi sisältää lausekkeita.
  41. Lause voi sisältää lausekkeita.
  42. int tupla *= 2; on lause, jossa kerrotaan kokonaislukutyyppisen muuttujan arvo kahdella.
  43. String puhelin = "667092"; on lause, jossa sijoitetaan muuttujaan String-tyyppinen arvo.
  44. String success = "true"; on lause, jossa sijoitetaan muuttujaan String-tyyppinen arvo.
  45. Jos esitellään ja sijoitetaan int yhteinen = 5; niin yhteinen/2 on lauseke, jonka arvo on 2,5.
  46. Jos esitellään ja sijoitetaan double yhteinen = 5; niin yhteinen/2 on lauseke, jonka arvo on 2,5.
  47. Jos esitellään ja sijoitetaan double hinta = 300; niin hinta % 20 on lauseke, jonka arvo on 60.
  48. Jos muuttujat minä ja muut ovat saman tyyppisiä, niin minä = muut; on sijoituslause.
  49. Jos muuttuja minä ja muut ovat saman tyyppisiä, niin minä == muut on totuusarvoinen lauseke.
  50. Jos esitellään boolean hyvä, paha; niin (hyvä != paha) == !(hyvä && paha) on aina totta.

Totta vai tarua?

  1. for-lauseen jatkamisehto tarkistetaan ennen toistettavan lauseen ensimmäistäkään suoritusta.
  2. for-lauseen toistettava lause suoritetaan aina vähintään kerran.
  3. for-lauseen alkuasetuslauseessa esitelty muuttuja on olemassa vain kyseisen for-lauseen sisällä.
  4. for-lauseen jatkamisehdossa voi esiintyä for-lauseen ulkopuolella esiteltyjä muuttujia.
  5. for-lauseen toistettava lause voi olla while-lause.
  6. for-lause toteuttaa alkuehtoisen toiston.
  7. while-lauseessa toistetaan toistettavaa lausetta kunnes jatkamisehto ei ole enää totta.
  8. while-lauseen toistettavana lauseena voi olla lohko.
  9. do-while-lause toteuttaa alkuehtoisen toiston.
  10. do-while-lauseen jatkamisehdossa voi esiintyä kokonaislukuarvoisia lausekkeita.
  11. Toistolause ei välttämättä toista mitään.
  12. Yhden tyyppinen toistolause on varsin helppoa korvata toisentyyppisellä toistolauseella.
  13. Metodi on pakko nimetä.
  14. Metodin määrittelyn on esiinnyttävä ohjelmakoodissa ennen kuin metodia kutsutaan.
  15. Metodeilla on oltava vähintään yksi parametri.
  16. Metodin muodollisten parametrien tyyppi on ilmoitettava metodia määriteltäessä.
  17. Jos metodin todellisena parametrina on operaatioita sisältävä lauseke, operaatioiden arvo lasketaan ennen metodiin siirtymistä.
  18. Jos metodin todellisena parametrina on muuttuja, kyseistä muuttujaa voidaan käyttää metodin sisältämissä lauseissa.
  19. Jos metodi A kutsuu metodia B, niin metodi B voi suorituksensa aikana käyttää metodissa A esiteltyjä muuttujia.
  20. Jos metodi A kutsuu metodia B, niin metodi A voi kutsusta palaamisen jälkeen käyttää metodin B esittelemiä muuttujia.
  21. Metodi voi kutsua toisia metodeja, jotka puolestaan voivat kutsua toisia metodeja.
  22. Samaa metodia voidaan kutsua monta kertaa peräjälkeen.
  23. Metodikutsusta yleensä palataan takaisin.
  24. Metodissa esitellyt muuttujat luodaan metodin ensimmäisellä suorituskerralla ja ne säilyvät metodin suorituskerrasta toiseen.
  25. Jos Java-tulkki käynnistetään komennolla java Hoi niin ensimmäiseksi suoritettava metodi on Hoi-luokan main-metodi.

Käsitteitä

Mitä seuraavat käsitteet tarkoittavat? Mihin niitä tarvitaan? Miten ne ilmaistaan Java-kielellä?