Toistokäsky

Useissa tietokoneohjelmissa samaa toimenpidettä pitää toistaa monta kertaa. Ajatellaan tasalyhenteistä lainaa varten tehtävää asuntolainalaskuria, joka pyytää ensin käyttäjältä lainasumman, laina-ajan ja korkoprosentin. Tämän jälkeen ohjelman halutaan tulostavan luettelon eri kuukausina maksettavista lainanhoitokuluista (lyhennys + korko yhteensä). Jos laina on tasalyhenteinen, maksettava lyhennys on joka kuukausi sama, mutta korkoerä vaihtelee sen mukaan, paljonko lainaa on jäljellä.

Ohjelman on siis laskettava jokaista kuukautta kohti sen hetkinen pääoma, tälle pääomalle kuukauden aikana kertynyt korko ja lyhennyserän ja kuukauden korkoerän summa. Jos laina-aika on 10 vuotta, pitää tämä laskutoimitus toistaa 120 kertaa. Olisi ikävää kirjoittaa samat käskyt ohjelmaan 120 kertaa peräkkäin. Lisäksi tämä lähestymistapa ei edes toimisi, jos käyttäjä saisi antaa vapaasti haluamansa laina-ajan, koska kirjoitettavien käskyjen määrä riippuisi aina laina-ajasta.

Tällaisia tilanteita varten useimmissa ohjelmointikielissä on toistokäskyjä. Toistokäskyn avulla voidaan ohjelmaa pyytää toistamaan jotain toista käskyä tai käskyjonoa niin kauan kuin jokin ohjelmoijan antama ehto on tosi.

Python-kielessä on kaksi erilaista toistokäskyä: `` while`` ja `` for``. Seuraavaksi tarkastellaan näiden käskyjen toimintaa. Ennen kuin lähdemme katsomaan asuntolainalaskurin toteuttamista näiden käskyjen avulla, tutkimme käskyjen rakennetta yksinkertaisemman esimerkin kautta.