Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

@ Leena Lahtinen Helia 10.1.2006 Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE.

Samankaltaiset esitykset


Esitys aiheesta: "@ Leena Lahtinen Helia 10.1.2006 Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE."— Esityksen transkriptio:

1 @ Leena Lahtinen Helia 10.1.2006 Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE

2 @ Leena Lahtinen Helia 10.1.2006 Ohjelman perusrakenteet  1. PERÄKKÄISRAKENNE  koko ohjelman toiminta on peräkkäinen  kaikki ohjelman toiminnot suoritetaan loogisesti peräkkäin  kerran tehtyä toimintoa ei voi enää peruuttaa  ohjelman kulkua ei voi eikä pidä ohjata takaisin ohjelman alkuun päin

3 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  2. VALINTARAKENNE  valintarakennetta käytetään ohjelmassa vaihtoehtoisten toimintojen suorittamiseen  ehdon jälkeen ohjelman kulku haarautuu kahteen vaihtoehtoiseen kulkusuuntaan, joista aina vain toinen suoritetaan

4 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  valintarakenne alkaa aina kysymyksellä eli ehdolla  kysymys eli ehtolauseke on aina sulkujen sisällä  ehtolausekkeella on aina kaksi vastausta:  tosi  epätosi  perustoiminta tiedon vertailu tarkoittaa samaa asiaa eli valinrakennetta

5 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Ehdon totuustilan sääntöjä  Tosi:  ehto pitää rakentaa niin, että tosi osaan tulee aina toimenpiteitä  tosi osa sisältää aina 1 - n. kpl toimenpiteitä  Epätosi:  voi puuttua eli se ei sisällä yhtään toimenpidettä (0 kpl)  tai sisältää 1 - n. kpl toimenpiteitä

6 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  YKSINKERTAINEN EHTO  (lampotila > 0)  (lukumaara = = 100)  (luku1 < luku2)  (a >= b)  tosi ja epätosi tilanteet on suoraan ymmärrettävissä

7 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE UML –toimintakaavion symbooli: EHTO [lampotila > 0] TULOSTA ”Ei pakkasta” TOSI EPÄTOSI

8 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Edellinen Javalla: if ( lukumaara = = 100) { y = y + 1 ; tosi-osan lohko } Huom ! lohkosulut { ja } !

9 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  LOHKOSULKUJEN KÄYTTÖ  lohko muodostetaan aina aaltosulkeilla eli lohkon toiminnat ovat aaltosulkeiden sisällä  lohkon aloittaa vasen aaltosulku { ja sen lopettaa oikea aaltosulku }  tosi–osasta tehdään oma lohko  epätosi–osasta tehdään oma lohko

10 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE Esimerkki Javalla, jossa on mukana kaksi lohkoa: if ( lukumaara = = 100) { y = y + 1 ; x = 5 ; tosi - lohko } else { y = y – 1 ; a = b / 7 ; epätosi – lohko }

11 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTETTY EHTO  ehto koostuu useasta (2 – 3) kysymyksestä  yhdistetyn ehdon loogiset operaattorit:  JA  TAI

12 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA - > JA (syntvuosi > 1980 JA syntvuosi < 1990)  Ehdossa yksi muuttuja, syntvuosi  koko ehto on tosi vain silloin:  kun syntvuosi - muuttujan arvoalue on väliltä 1981-1989  koko ehto on epätosi kahdessa tilanteessa:  muuttujan arvo on 1980 tai pienempi  muuttujan arvo on 1990 tai suurempi

13 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> JA (&&)  Edellinen Javalla: if (syntvuosi > 1980 && syntvuosi < 1990) { a = 0; c = 100 ; }

14 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> JA (hinta > 55,95 JA laji = = 1)  Ehdossa kaksi muuttujaa, hinta ja laji  koko ehto on tosi vain silloin:  kun molempiin ehtoihin tulee vastaus tosi eli  hinta on suurempi kuin 55,96 ja laji on yksi  koko ehto on epätosi:  jos jompi kumpi ehdoista on epätosi tai molemmat ehdot ovat epätosia

15 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> JA (&&)  Edellinen Javalla: if (hinta > 55.95 && laji = = 1) { ale = 5 ; summa = 0 ; } else { ale = 10 ; laskuri -- ; }

16 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> TAI (kappale = = 10 TAI kappale >= 150)  Ehdossa yksi muuttuja, kappale  koko ehto on tosi kahdessa eri tilanteessa:  vain ensimmäinen ehto on tosi  vain toinen ehto on tosi  koko ehto on epätosi:  kun molemmat ehdot ovat epätosia

17 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> TAI ( || )  Edellinen Javalla: if (kappale = = 10 || kappale >= 150) { summa = 0 ; a = 10 ; }

18 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> TAI (saldo < 0 TAI luottoraja < 1000.00)  Ehdossa kaksi muuttujaa saldo ja luottoraja  koko ehto on tosi kolmessa eri tilanteessa:  vain ensimmäinen ehto on tosi  vain jälkimmäinen ehto on tosi  molemmat ehdot ovat tosia  koko ehto on epätosi silloin:  kun molemmat ehdot ovat epätosia

19 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTÄVÄ SANA -> TAI ( || )  Edellinen Javalla: if (saldo < 0 || luottoraja < 1000.00) { summa = 0 ; a ++ ; }

20 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  YHDISTETTYJÄ EHTOJA ((vv >= 2000 JA vv < 2003) TAI koodi = = 1)  sulkujen käyttö suositeltavaa  koko ehto on tosi tilanteissa:  jos vv on väliltä 2000 – 2002  tai koodi on 1  tai molemmat edellä mainitut ehdot ovat tosia  koko ehto on epätosi:  muuttujien muilla arvoilla

21 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE YHDISTETTYJÄ EHTOJA Edellinen Javalla: if ((vuosi >= 2000 && vuosi < 2003) || kpl = = 1) { alku = 10 ; summa = 0 ; }

22 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Yhdistetyn ehdon sääntöjä:  ehtoon ei pidä laittaa liikaa kysymyksiä  suositus on yhdestä kolmeen (2 -3)  jos ehtoja on likaa, on hyvin vaikeaa mieltää milloin koko ehto on tosi ja milloin se on epätosi  useiden ehtojen sijaan käytä sisäkkäisiä ehtoja eli sisäkkäisiä valintarakenteita

23 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Sisäkkäinen valintarakenne  ehdon kysymykset hajoitetaan useampaan kysymykseen  yhteen kuuluvista kokonaisuuksista tehdään oma ehtolauseke

24 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Sisäkkäinen valintarakenne  ehdon tosi-osa samoin kuin epätosi- osa voi siis sisältää edelleen valintarakenteita  sisäkkäiset valintarakenteet ovat teknisesti täysin samanlaisia kuin valintarakenne yleensä

25 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  seuraava lauseke tulisi tehdä sisäkkäisillä valintarakenteilla  esimerkki Javalla: if (((a d) { luku = 5 ; } else { luku = 10 ; }

26 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Edellinen Javalla sisäkkäisinä rakenteina: if (a d) { luku = 5 ; } else { luku = 10 ; } }

27 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Erilaiset valintarakenteet: 1. if.. 2. if.. else.. 3. if.. else if.. 4. switch 5. ehto ? :

28 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Usean arvon vertailu eli monivalinta ja raja-arvojen vertailu  Arvojen tehokas vertailu:  jokaisesta raja-arvosta tehdään yksi kysymys eli ehto  ei käytetä yhdistettyjä ehtoja  UML – kaaviossa oma esitystapansa  Javalla käytetään else if – muotoa tai switch - muotoa

29 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE if… else if – rakenne  esimerkki Javalla : Huom! vertailtavat arvot etenevät pienemmästä suurempaan. if (lampotila < -10) System.out.println (”Liikaa pakkasta”) ; else if (lampotila < 0) System.out.println (”Sopiva pakkanen”) ; else if (lampotila < 15) System.out.println (”Keväinen sää”) ; else if (lampotila < 25) System.out.println (”Kesäinen sää”) ; else System.out.println (”Helteinen sää”) ;

30 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  SWITCH - rakenne  käytetään moni valinnassa  ehtomuuttujalla on useita eri arvoja, joilla ehto on tosi  korvaa if - valintarakenteen  saadaan selkeämpi kokonaisuus

31 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  rakenne alkaa sanalla switch  sen jälkeen tulee suluissa ehtomuuttuja, johon voi liittyä myös esim. laskukaava  tämän jälkeen luetellaan kaikki ne ehtomuuttujan arvot, joilla ehto on tosi  lopussa voi olla lisäksi epätosi

32 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  UML – kaavion esitystapa: [luku = = 2] [luku = = 5] a ++ ; b ++ ; a ++ ; muut ++ ; break; [luvun muut arvot]

33 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Edellinen Javalla ja switch - rakenteena: switch (luku) { case 2: a++ ; break ; case 5: b++ ; break ; default: muut ++ ; }

34 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  edellinen esimerkki Javalla, kun käytetään else if – rakennetta: if (luku == 2) a++ ; else if (luku == 5) b++ ; else muut ++ ;

35 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Ehto ? : - rakenne  muuttuja = ((ehto) ? arvo : arvo)  rakenne koostuu neljästä osasta:  muuttuja, johon sijoitetaan kysymyksen tuloksena tuleva arvo (sijoitus)  ehto suluissa  ? – merkin jälkeen tosi–arvo  : – merkin jälkeen epätosi-arvo  Käytetään harvoin

36 @ Leena Lahtinen Helia 10.1.2006 VALINTARAKENNE  Edellisen ehdon esimerkki tapaus:  Jos laskuri on suurempi kuin 10, kpl – muuttuja saa arvokseen luvun 5, muuten arvon 0.  Javalla: kpl = ((laskuri > 10) ? 5 : 0) ;


Lataa ppt "@ Leena Lahtinen Helia 10.1.2006 Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE."

Samankaltaiset esitykset


Iklan oleh Google