Esimerkki: Viiden kertotaulu

Haluamme tehdä ohjelman, joka tulostaa viiden kertotaulun.

SANALLINEN ALGORITMI
  1. Määrittele globaali kokonaislukumuuttuja a 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. Muuttujan a arvo kasvaa yhdellä.
  7. Tulosta: "5 ∙"+a+" = "+5*a paikkaan (20,20+20*a). Kun muuttuja a kasvaa (1, 2, 3, 4,..), niin samalla tulostuslauseen y-koordinaatti kasvaa (40, 60, 80, 100,..) ja kertolaskun tulos.

// Ohjelman tehnyt e-Oppi Oy
// 30.9.2017
int a = 0; // Laskurin alkuarvo

void setup () {
size(400,400); // Ikkunan koko
background(255); // Taustaväri valkoinen
fill(0); // Täyttöväri musta
textSize(20); // Tekstin koko 20
}

void draw () {
a++; // Laskuri kasvaa yhdellä
text("5\u00B7"+a+" = "+5*a,20,20+20*a); // Tulosta
}


Kun yllä oleva koodi suoritetaan, niin tulostuu seuraavaa.




Tässä laskuri a kasvaa yhdellä ja samalla tehdään viiden kertolaskuja alaspäin. Tulostuslause vaatii hieman tarkempaa tutkimusta.


Laskuri mahdollistaa useita laskuja allekkain. Tässä laskuri kasvaa jatkuvasti. Entä jos haluaisimme tulostaa vain 10 ensimmäistä kertolaskua? Tällöin tarvitsemme if-lausetta. Meidän pitäisi tehdä ehto: jos laskuri on pienempi tai yhtä suuri kuin 10, niin silloin tulosta laskurin arvo ja tee kertolasku. Muutetaan koodia seuraavasti:

SANALLINEN ALGORITMI
  1. Määrittele globaali kokonaislukumuuttuja a 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. Muuttujan a arvo kasvaa yhdellä.
  7. Jos muuttujan a arvo on pienempi tai yhtä suuri kuin 10, niin
    Tulosta: "5 ∙"+a+" = "+5*a paikkaan (20, 20+20*a). Kun muuttuja a kasvaa (1, 2, 3, 4,..), niin samalla tulostuslauseen y-koordinaatti kasvaa (40, 60, 80, 100,..) ja kertolaskun tulos.

// Ohjelman tehnyt e-Oppi Oy
// 30.9.2017
int a = 0; // Laskurin alkuarvo

void setup () {
size(400,400); // Ikkunan koko
background(255); // Taustaväri valkea
fill(0); // Täyttöväri musta
textSize(20); // Tekstin koko
}

void draw () {
a++; // Laskuri kasvaa yhdellä
if (a <= 10) { // Jos a on peienmpi tai yhtäsuuri kuin 10, niin
text("5\u00B7"+a+" = "+5*a,20,20+20*a); // Tulosta
}
}


Jolloin tulostuu seuraavaa.


Ohjelman suoritusta voi myös havainnollistaa taulukoimalla laskurin a arvoja.

a++ (a <= 10) text("5\u00B7"+a+" = "+5*a,20,20+10*a);
1 1 <= 10, tosi text("5\u00B7"+1+" = "+5,20,30);
2 2 <= 10, tosi text("5\u00B7"+2+" = "+10,20,40);
3 3 <= 10, tosi text("5\u00B7"+3+" = "+15,20,50);
4 4 <= 10, tosi text("5\u00B7"+4+" = "+20,20,60);
5 5 <= 10, tosi text("5\u00B7"+5+" = "+25,20,70);
6 6 <= 10, tosi text("5\u00B7"+6+" = "+30,20,80);
7 7 <= 10, tosi text("5\u00B7"+7+" = "+35,20,90);
8 8 <= 10, tosi text("5\u00B7"+8+" = "+40,20,100);
9 9 <= 10, tosi text("5\u00B7"+9+" = "+45,20,110);
10 10 <= 10, tosi text("5\u00B7"+10+" = "+50,20,120);
11 11 <= 10, epätosi -