1. Kokeile seuraavaa ohjelmaa:
class Elvis { public static void main(String[] arguments) { int paino = 120; System.out.println("Elvis painaa " + paino); System.out.println("Elvis käy syö-niin-paljon-kuin-haluat-" + "kuppiloisa."); System.out.println("Elvis esiintyy kiitospäivän juhlassa."); paino=paino +10; System.out.println("Elvis painaa nyt " + paino); System.out.println("Elvis löytää aerobicin."); paino=paino -15; System.out.println("Elvis painaa nyt " + paino); System.out.println("Elvis putoaa pesukoneeseen liotusvaiheen" + "aikana."); paino=paino /3; System.out.println("Elvis painaa nyt " + paino); System.out.println("Oho! Elvis kloonaa itsensä 12 kertaa."); paino=paino +(paino *12); System.out.println("13 pikku-Elvistä painaa nyt " + paino); } }
2. Kirjoita seuraavat matemaattiset kaavat Java-tulkin ymmärtämään muotoon:
3. Kokeile seuraavaa ohjelmaa:
class Esimerkki { public static void main(String[] args) { int luku1 = 5, luku2 = 7; int summa, tulo; summa = luku1 + luku2; tulo = luku1 * luku2; System.out.println("Lukujen summa on " + summa); System.out.println("Lukujen tulo on " + tulo); } }
4. Kokeile seuraavaa ohjelmaa:
class Ylivuoto { public static void main(String[ ] args) { byte luku=126; System.out.println("luku on nyt "+luku); luku++; System.out.println("luku on nyt "+luku); luku++; System.out.println("luku on nyt "+luku); luku++; System.out.println("luku on nyt "+luku); } }
Talleta ohjelma nimellä Ylivuoto.java. Käännä ja aja ohjelma. Selitä mitä tapahtui ja miksi.
5. Mikä on kokonaislukumuuttujan a arvo seuraavien lauseiden jälkeen?
a = 2; b = 3; a = a + 2; b = b * 2; a = b + 1; a = a + 5;
6. Lisää ohjelmaan maaginen koodi, joka vaihtaa muuttujien arvot keskenään, eli ohjelman lopussa muuttujan luku1 arvo on 10 ja muuttujan luku2 arvo on 5. Huom! Ohjelman pitää toimia myös muuttujien muilla arvoilla! Maaginen koodi saa sisältää ainoastaa sijoituslausekkeita =.
luku1 = luku2; luku2 = luku1;
Ei toimi, vaan lopuksi muuttujien luku1 ja luku2 arvot ovat 10, eli arvo 5 hävisi. Korjaa koodi. (vihje: laita 5 muuttujan tasku arvoksi)
class Vaihto { public static void main(String[] args) { int luku1 = 5, luku2 = 10, tasku; System.out.println("luku1 = " + luku1 + "ja luku2 = " + luku2); //... Maagista koodia ... luku1 = luku2; luku2 = luku1; System.out.println("luku1 = " + luku1 + "ja luku2 = " + luku2); } }
7. Tee ohjelma, joka laskee lukujen 4, 7, 10 ja 5 keskiarvon. Tuloste on seuraava
Lukujen 4, 5, 7 ja 10 keskiarvo on 6.5
8. Talleta arvot 4, 5, 7 ja 10 muuttujiin ja käytä muuttujia tulostuslausekkeessa. Laske keskiarvo double-tyyppiseen muuttujaan keskiarvo. Muista tyyppimuunnokset!
class Keskiarvo { public static void main(String[] args) { int luku1 = 4, luku2 = 5, luku3 = 7, luku4 = 10; double keskiarvo; ... Koodia ... } }
9. Muuta edellistä ohjelmaa siten, että se laskeekin lukujen 1, 2, 3 ja 4 keskiarvon.
10.Minkä tuloksen tietokone saa seuraavista laskuista?
a) 9 / 10
b) 9.0 / 10.0
c) 1 / 10.0 + 1
d) 5 / 9 * (32 + 5)
e) 5.0 / 9.0 * (32 + 5)
f) 5.0 / 9.0 * (32.0 + 5.0)
Vihje: voit kopioida kaavat System.out.println(9/10)-lausekkeeseen ja katsoa tuloksen. Perustele, miksi mikäkin tulos tuli!
11. Mitkä seuraavista ovat sallittuja muuttujan nimiä?
matti matti meikalainen matti_meikalainen etunimi 12etunimi
12. Missä kohtaa ohjelmassa on virheitä?
class Virheellinen { public static void main(String args[]) { int luku1 = 1, luku2 = 2; double suhde = luku1 / luku2; String sana = luku1 / luku2; System.out.println("luku1 on " + luku1); System.out.println("luku2 on " + luku2); System.out.println("Lukujen summa on " + (luku1 + luku2)); System.out.println("Lukujen suhde on " + suhde); sana = "Jonkinlainen lause"; System.out.println(sana); luku3 = 5; luku2 = luku1 / luku3; sana = luku1 + 5; } }
13. Tee ohjelma, jossa on kokonaislukutyyppiset muuttujat ika ja paino, desimaalimuuttuja pituus ja String-tyyppinen muuttujat etunimi ja sukunimi. Aseta muuttujille alkuarvot.


