Helsingin yliopisto / Tietojenkäsittelytieteen laitos / 581325-0 Ohjelmoinnin perusteet
Copyright © 2008 Arto Wikla. Tämän oppimateriaalin käyttö on sallittu vain yksityishenkilöille opiskelutarkoituksissa. Materiaalin käyttö muihin tarkoituksiin, kuten kaupallisilla tai muilla kursseilla, on kielletty.

2. harjoitukset 9.-12.9.2008

Aiheita: aritmeettisia lausekkeita, kirjoittamista, lukemista, loogisia lausekkeita, if-lause

  1. Mitä arvoja muuttujat saavat seuraavia lauseita suoritettaessa? Perustele. (Tätä tehtävää ei tarvitse tehdä koneella, tarkistaa toki saa...)
      int i = 1, j, k = 2;
      double p, r = 2.8;
      String m, n = "Pluto", o;
      j = i + 10*(k+i);
      k = j/3;
      p = j/3;
      i = k*i/2;
      p = p/r/2;
      i++; ++i;
      --j; j--;
      p++; ++p;
      k += 10;
      r -= 1000;
      m = n + 10 + 101;
      o = 20 + 100 + n;
      m = n + (20+100);
      o = (11+108) + n;
      m = n + (30-120);
      o = (100-40) + n; 
    
  2. Kirjoita yksi tulostuslause, jotka tulostaa:
            Missä miehet /// ratsastaa \\\                   *
            ei kuulu 'susien' "ulvontaa"                     *
            vaan vain lampaiden määintää... & mää'intää      *
    

  3. Laadi vuorovaikutteinen eli keskusteleva ohjelma onnenlukujen laskentaan. Onnenluku on jakojäännös, joka saadaan, kun pituuden (sentteinä) ja kengännumeron tulo jaetaan luvulla 7. Ohjelma kysyy myös käyttäjän nimen ja tulostaa sen onnenluvun ilmoittavaan raporttiinsa.

    Käytä kuvaavia muuttujan nimiä ja ohjelmoi keskustelu selkeäksi. Kommentoi ohjelma ja kiinnitä muutenkin huomiota ohjelman selkeään ulkoasuun. Miksi ohjelman ulkoasun on tärkeää olla selkeä? Kenelle se on tärkeää? Miksi ohjelman tulostuksen on tärkeää olla selkeää ja helposti ymmärrettävää? Kenelle tämä on tärkeää?

  4. Olkoon:
       int a, b, c;
       double p, q, r;
    
    Kirjoita looginen lauseke seuraaviin tapauksiin:

    1. a on pariton
    2. b on nollaa pienempi, mutta suurempi kuin -500
    3. b on suurempi kuin a, mutta pienempi kuin c
    4. -50 < p < 100
    5. joko a on 7 ja b on positiivinen tai q on suurempi kuin p:n ja r:n osamäärä
    6. r < -1.7 tai r > 20.1, c:n ja a:n summa on pariton ja b ei ole 59
    7. joko p on positiivinen tai q on positiivinen, mutta molemmat eivät ole positiivisia

  5. Kirjoita if-lauseita käyttäen ohjelma, joka lukee kolme lukua ja tulostaa ne suuruusjärjestyksessä. Ohjelmoi tehtävä kahdella erilaisella tavalla: siten että muuttujien arvoja vaihdetaan ja siten että niitä ei vaihdeta? Miten neljä lukua saataisiin tulostettua suuruusjärjestyksessä?


Takaisin harjoitussivulle.