Helsingin yliopisto / Tietojenkäsittelytieteen laitos / 581325-0 Ohjelmoinnin perusteet
Copyright © 2007 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 10.-14.9.2007

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

  1. Mitä arvoja muuttujat saavat seuraavia lauseita suoritettaessa? Perustele.
      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:
            "Hard, rock \\\ hallelujah ///
             Hard, rock, 'hallelujah'..."
             screams one "monster".
    

  3. Laadi vuorovaikutteinen eli keskusteleva ohjelma onnenlukujen laskentaan. Onnenluku on jakojäännös, joka saadaan, kun pituuden ja painon summa jaetaan kengännumerolla. Aluksi ohjelma kysyy käyttäjän nimen ja tulostaa myö 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 suurempi, mutta pienempi kuin 75
    3. b on suurempi kuin c, mutta pienempi kuin a
    4. -50 < p < 90
    5. a on 7 ja b on negatiivinen tai q on suurempi kuin r:n ja p:n erotus
    6. r < -7.1 tai r > 3.1, c:n ja a:n summa on parillinen ja b ei ole 666
    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.


Visitor Counter by
Digits
(by WebCounter)