Esimerkki: Pääkaupunki

Tehdään ohjelma, jossa tutkitaan merkkijonoa. Jos ohjelman pitäisi ottaa huomioon esimerkiksi eri kirjoitustavat, niin tällöin tarvitaan kaksi tai useampi ehto. Tässä esimerkissä ei vastaus pitää hyväksyä, sekä pienellä, että isolla kirjoitettu teksti. Jos muuttujalla on arvo: helsinki TAI Helsinki, niin silloin tulostetaan kommentti: Tämä on Suomen pääkaupunki. Kaikissa muissa tapauksissa tulostetaan: Tämä ei ole Suomen pääkaupunki. Ohjelman koodi on seuraavanlainen.

Sanallinen algoritmi
  1. Aseta ikkunan kooksi 600 px vaakaan ja 200 px pystyyn.
  2. Aseta ikkunan taustaväriksi valkoinen.
  3. Aseta tekstin väriksi musta.
  4. Aseta tekstin kooksi 32 px.
  5. Määrittele merkkijonomuuttuja nimeltään: kaupunki ja anna sille arvo: "Helsinki".
  6. Jos ( kaupunki-muuttuja on "helsinki" ) TAI ( kaupunki-muuttuja on "Helsinki" ), niin
    tulosta kommentti: "Tämä on Suomen pääkaupunki" paikkaan (10,100),
  7. muutoin tulosta kommentti: "Tämä ei ole Suomen pääkaupunki" paikkaan (10,100).

// Ohjelman tehnyt: e-Oppi Oy
// 30.1.2017
void setup() {
     size(600,200); // Ikkunan koko
     background(255); // Valkea taustaväri
     fill(0); // Musta tekstin väri
     textSize(32); // Tekstin koko 32
}
void draw() { String kaupunki = "Helsinki"; // Muuta tähän kaupungin nimi if ((kaupunki == "helsinki") || (kaupunki=="Helsinki")) { text("Tämä on Suomen pääkaupunki",10,100); } else { text("Tämä ei ole Suomen pääkaupunki",10,100); } }


Ohjelmoinnissa TAI-sana korvataan kahdella pystyviivalla: ||. Kun kirjoitat ehtoja, niin rilliset ehdot pitää laittaa sulkeisiin. Tämä selkeyttää koodia ja on vaatimus ehtojen toimimiselle.

Mitä jos tähän ehtoon laittaisi JA-vertailuoperaattorin? Se ei olisi järkevää, koska muuttuja ei voi saada yhtä aikaa kahta eri arvoa. Vaikka muuttujalla olisi oikea arvo, niin if-lauseen ehto ei koskaan täyttyisi.

Alla on ohjelman esimerkkiajo kahdella eri muuttujan arvolla.



Jos haluat tehdä ohjelman, joka kysyy pääkaupungin-nimeä Javan syöttökentän avulla, niin ehtolauseessa on käytettävä ehtoa, joka on muotoa: muuttuja.equals("Tekstiä").  Syy tähän on se, että Javan syöttökenttä palauttaa muuttujan arvoksi String objektin, ei String tietotyypin. Tehdään tästä kokonainen ohjelma.


// Ohjelman tehnyt: e-Oppi Oy // 2.1.2018 import static javax.swing.JOptionPane.*;
void setup () {
size(600,200); // ikkunan koko
fill(0); // Tekstinväri musta
background(255); // Taustaväri valkoinen
textSize(32); // Tekstin koko 20
noLoop(); // void draw ()-lohko suoritetaan vain kerran
}
void draw () {
String vastaus = showInputDialog("Mikä on Suomen pääkaupunki?");
if ((vastaus.equals("Helsinki")) || (vastaus.equals("helsinki"))) {
text("Tämä on suomen pääkaupunki",10,100);
} else {
text("Tämä ei ole suomen pääkaupunki",10,100);
}
}


Huomaa, että yllä oleva esimerkki toimii vain PC-koneilla. Javan kirjastoja ei ole käytössä esimerkiksi iPad-tabletin Processing-sovelluksella.