L 5,R 65,J,T 5 10 @Ots(P„„teohjaus 3) SECTION #define Tutki (=kirjoita lyhyt malliohjelma, jolla voit testata) pit„v„tk” seuraavat v„itteet paikkansa (kirjoita vastauksetv„itteiden viereen ja tarkista lopuksi ohjaajan kanssa v„itteet): BEGIN NUMBERED My”s lainausmerkeiss„ oleva teksti korvautuu! #define pit„„ kirjoittaa ennen kaikkia aliohjelmia! #define on muotoa #define vakio=arvo #define rivi pit„„ p„„tt„„ puolipisteeseen. Seuraavasta seuraa k„„nn”svirhe: BEGIN GESIMERKKI #define OMA 5; ... a = a + OMA + 3; END GESIMERKKI #define korvaa vain kokonaisia sanoja. #define ei voi sis„lt„„ funktiokutsuja. #definell„ ei voi m„„ritell„ tyhji„ jonoja END NUMBERED SECTION Funktiot Kirjoita seuraavat funktiot tai aliohjelmat sek„ testiohjelma, jolla testataan niiden toimivuus. BEGIN NUMBERED Funktio int etumerkki(double x, double eps) joka palauttaa BEGIN GESIMERKKI -1 mik„li x<-eps 0 mik„li -eps<=x<=eps 1 mik„li x>eps END GESIMERKKI Aliohjelma kysy_vuosi, joka kysyy vuosiluvun ja palauttaasen parametrinaan. Aliohjelman nimess„ palautetaan 0 mik„liannettu vuosiluku ei ole t„lt„ vuosisadalta tai sy”tt” onmuuten v„„rin. Mik„li sy”tt” on t„lt„ vuosisadalta, palautetaan aliohjelman nimess„ 1. END NUMBERED SECTION Kerho-ohjelma 1. versiot SUBSECTION Runko BEGIN NUMBERED Kopioi KERHO-ohjelman 1. versio omaan hakemistoosi: BEGIN GESIMERKKI C:\OMAT\OHJELMOI\VESA>PAINAR copyn:\kurssit\cpp\kerho\runko.1\*.* END GESIMERKKI Tutki Borland-C:ll„ tiedostoa kerho.c Aja ohjelmaa kokonaisena ja askel kerrallaan. Ymm„rr„tk” nyt PAINA [F7] ja PAINA [F8] eron? Siirry riville, jossa lukee BEGIN GESIMERKKI nimi = "Ankka Aku"; END GESIMERKKI Laita riville keskeytyskohta (PAINA [Ctrl-F8]). Aja ohjelma (PAINA [Ctrl-F9]). Vastaile kunnes ohjelma pys„htyy. Laita watch ikkunaan muuttujat this ja *this. Aja askel kerrallaan ja seuraa mit„ tapahtuu. Tutki mitk„ osat ymm„rr„t (vrt. listaus monisteessa). END NUMBERED SECTION Taulukot BEGIN NUMBERED Kirjoita funktio joka palauttaa nimess„„n C-merkkijononpituuden. Kirjoita testiohjelmaksi vakiokutsuja: BEGIN GESIMERKKI pit=pituus("Aku Ankka"); ... END GESIMERKKI Kirjoita funktio, joka palauttaa nimess„„n parametrinaannetun C-merkkijonon v„lily”ntien lukum„„r„n. Kirjoitatestiohjelmaksi vakiokutsuja: BEGIN GESIMERKKI val=valeja("Aku Ankalla on merimiespusero p„„ll„."); ... END GESIMERKKI END NUMBERED