Ensimmäisissä laskuharjoituksissa kerrataan jo aiemmin opittua ja
lämmitellään kurssia varten. Kaikissa tehtävissä ei ole yhtä
oikeaa vastausta -- tärkeää on pohdinta ja yrittäminen.
Tehtävä 1 käydään läpi laskuharjoitustilaisuudessa keskustellen. Tehtävät 2-4
valmistellaan ryhmätöinä laskuharjoitustilaisuudessa. Ryhmät esittävät
vastauksensa muille osallistujille, jonka aikana / jälkeen käydään keskustelua
ratkaisun ominaisuuksista ja muista mahdollisista ratkaisutavoista.
public class Kioski { public Matkakortti ostaMatkakortti(String nimi) { Matkakortti uusiKortti = new Matkakortti(nimi); return uusiKortti; } public Matkakortti ostaMatkakortti(String nimi, int arvo) { Matkakortti uusiKortti = new Matkakortti(nimi); uusiKortti.kasvataArvoa(arvo); return uusiKortti; } } public class Matkakortti { private String omistaja; private double arvo; private int pvm; private int kk; public Matkakortti(String n) { omistaja = n; pvm = 0; kk = 0; arvo = 0; } public void kasvataArvoa(double a) { arvo += a; } public void vahennaArvoa(double a) { arvo -= a; } public double getArvo(){ return arvo; } public void uusiAika(int p, int k) { kk = k; pvm = p; } } public class Lataajalaite { public void lataaArvoa(Matkakortti k, double a) { k.kasvataArvoa(a); } public void lataaAikaa(Matkakortti k, int pvm, int kk) { k.uusiAika(pvm, kk); } } public class Lukijalaite { private double RATIKKA = 1.5; private double HKL = 2.1; private double SEUTU = 3.5; public boolean ostaLippu(Matkakortti k, int tyyppi){ double hinta = 0; if ( tyyppi == 0 ) hinta = RATIKKA; else if ( tyyppi ==1 ) hinta = HKL; else hinta = SEUTU; if ( k.getArvo() < hinta ) return false; k.vahennaArvoa(hinta); return true; } } public class Main { public static void main(String[] args) { Lataajalaite rautatietori = new Lataajalaite(); Lukijalaite ratikka6 = new Lukijalaite(); Lukijalaite bussi244 = new Lukijalaite(); Kioski lippuLuukku = new Kioski(); Matkakortti artonKortti = lippuLuukku.ostaMatkakortti("Arto"); rautatietori.lataaArvoa(artonKortti, 3); ratikka6.ostaLippu(artonKortti, 0); bussi244.ostaLippu(artonKortti, 2); } }