Esimerkki: Laskuri ja laskukaavat

Olkoon laskuri x = x + 2. Neliön piiri lasketaan kaavalla p = 4∙x, missä x on neliön sivun pituus. Laske laskurin avulla piirille kuusi ensimmäistä arvoa, kun laskurin alkuarvo on 0.

Lasketaan ensin taulukoimalla piirille arvot, kun x saa arvoja: 0, 2, 4, 6, 8, 10.

1. arvo: Laskuri: x = 0 Piiri: p = 4∙0 = 0
2. arvo: Laskuri: x = 0 + 2 = 2 Piiri: p = 4∙2 = 8
3. arvo: Laskuri: x = 2 + 2 = 4 Piiri: p = 4∙4 = 16
4: arvo: Laskuri: x = 4 + 2 = 6 Piiri: p = 4∙6 = 24
5. arvo: Laskuri: x = 6 + 2 = 8 Piiri: p = 4∙8 = 32
6. arvo: Laskuri; x = 8 + 2 = 10 Piiri: p = 4∙10 = 40

Kun rakennamme tästä ohjelman, niin lukujen on tulostuttava allekkain. Se onnistuu, kun laitamme tulostuslauseen y-koordinaatin paikalle lausekkeen: 20+x*20. Kun a saa arvoja: 0, 1, 2, 3, 4, 5 ja 6, y-koordinaatti saa arvoa: 20, 40, 60, 80, 100, 120. Tällöin jokainen uusi teksti tulee 20 px alemmas kuin edellinen teksti. Jos haluamme tulostaa vain kuusi ensimmäistä arvoa, niin tällöin käytämme if-lauseketta. Tulostus tapahtuu niin kauan kuin ehto (x on pienempi tai yhtä suuri kuin 10) on voimassa. Kokonainen ohjelma, joka laskee kuusi ensimmäistä piirin arvoa, on seuraavanlainen.

SANALLINEN ALGORITMI
  1. Määrittele globaali kokonaislukumuuttuja x ja anna sille alkuarvo 0.
  2. Aseta ikkunan kooksi 400 px vaakaan ja 400 px pystyyn.
  3. Aseta ikkunan taustaväriksi valkoinen.
  4. Aseta täyttöväriksi musta.
  5. Aseta tekstin kooksi 20.
  6. Määrittele paikallinen kokonaislukumuuttuja p ja sijoita siihen laskutoimituksen 4*x vastaus. Koska x-muuttuja kasvaa void draw ()-lohkon päivittyessä, niin samalla myös p-muuttuja kasvaa.
  7. Jos muuttuja x on pienempi tai yhtä suuri kuin 10, niin silloin
    tulosta muuttujan x ja p arvot paikkaan (20,20+x*20). Koska muuttuja x on tulostuslauseessa, niin x:n kasvaessa (x = 0, 1, 2, 3,...) kasvaa myös y-koordinaatti (20, 40, 60, 80,...).
  8. Kasvata laskuri-muuttujaa 2:lla.

// Ohjelman tehnyt e-Oppi Oy
// 30.9.2017
int x = 0;
void setup () {
size(400,400); // Ikkunan koko
background(255); // Taustaväri valkoinen
fill(0); // Täyttöväri musta
textSize(20); // Tekstin koko
}
void draw () {
int p = 4*x; // Laske piiri
if (x <= 10) { // Jos x on pienempi tai yhtä suuri kuin 10, niin
text("Laskuri: x = "+x+", Piiri: p = "+p,20,20+x*20);
// Tulosta piiri
}
x = x + 2; // Kasvata laskuria kahdella
}


Katsotaan tulostuslausetta tarkemmin:



Ohjelman suoritus näyttää tältä:


Peda.net käyttää vain välttämättömiä evästeitä istunnon ylläpitämiseen ja anonyymiin tekniseen tilastointiin. Peda.net ei koskaan käytä evästeitä markkinointiin tai kerää yksilöityjä tilastoja. Lisää tietoa evästeistä