FKM Kompass
L1

Juhtimisvoog

Tingimuslaused lasevad programmil teede vahel valida ja tsüklid lasevad tööd korrata ning koos muudavad need kindla käskude loendi millekski, mille käitumine sõltub andmetest.

Practise this concept

Ülevalt alla täidetav käskude loend teeb iga kord sedasama, mis ei ole veel kasulik. Juhtimisvoog on see, mis paneb programmi oma sisendile reageerima. Mehhanisme on ainult kaks: alternatiivide vahel valimine ja kordamine.

Valik on tingimuslause. If–else hindab kontrolli ja täidab täpselt ühe haru — sobiva — ning jätkab seejärel pärast kogu lauset. Mõlemad harud on kirja pandud; ühe läbimise korral toimub ainult üks. Mitme kontrolli ahelasse sidumine on viis, kuidas programm rohkem kui kaht juhtu käsitleb, ja järjekord loeb, sest esimene sobiv haru võidab.

Kordamine on tsükkel ja just seal kohtavad algajad oma esimest tõeliselt ohtlikku viga. while-tsükkel jätkab seni, kuni selle tingimus kehtib, seega peab miski keha sees selle tingimuse lõpuks vääraks muutma. Kui miski seda ei tee, ei lõpe tsükkel kunagi — programm hangub ja ühtegi viga ei teatata. Teadaoleva kogumi läbiv for-tsükkel on ohutum, sest kogum annab lõpu ette. Just seepärast ei saa kordade arvu sageli koodilt maha lugeda: kui tsükkel töötab kuni tingimuse täitumiseni, otsustavad ainult andmed, kui kaua see aega võtab, ja just selle üle arutlemine — mitte ridade lugemine — on oskus, mida treenitakse.

Key ideas

Requires: Algoritmid ja programmi struktuur

Unlocks: Andmestruktuurid ja algoritmid

Common misconceptions

  • Tsükkel, mille tingimus ei muutu kunagi vääraks, peatub lõpuks iseenesest.
  • Tsükli kordade arvu saab alati koodilt otse maha lugeda.
  • Lause if–else täidab mõlemad harud, üksteise järel.

Resources

Kuulub nende TÜ ainete hulka

See mõiste on kaardistatud järgmis(t)e Tartu Ülikooli õppekava aine(te) osaliseks kattmiseks.