Slovník | Vyhledávání | Mapa webu
 
Základy informatiky pro biologyAlgoritmizace a programování Návrh algoritmů I Vývojové diagramy Cykly

Logo Matematická biologie

Cykly

Cykly, které se řídí podmínkou, jsou dva, a to s podmínkou na začátku a s podmínkou na konci. Obě varianty mají společné, ale i odlišné vlastnosti, které je předurčují k různým oblastem použití. Oproti cyklu s daným počtem opakování nemají index, který by automaticky měnil svou hodnotu.

Cyklus s podmínkou na začátku
Tento cyklus se bude provádět tak dlouho, dokud bude podmínka cyklu splněna. Pokud podmínka nebude splněna ani předtím než by jsme měli vstoupit do cyklu, tak se cyklus neprovede ani jednou.

Cyklus s podmínkou na začátku má tyto vlastnosti:

  • nejprve se vyhodnocuje podmínka a až pak se provádí tělo,
  • tělo se vykonává, dokud je podmínka splněna,
  • tělo se nemusí vykonat ani jednou (pokud není podmínka splněna hned při prvním vstupu),
  • počet opakování je omezen pouze podmínkou a může jich být 0 až nekonečno.

Cyklus s podmínkou na konci
Tento cyklus je velmi podobný cyklu předchozímu jen s tím rozdílem, že podmínku testujeme až na konci. Zaručuje nám to tedy, že tento cyklus se provede vždy alespoň jednou.

Poznámka: V některých programovacích jazycích se tělo vykonává, dokud není podmínka splněna (např. Pascal), a v jiných, dokud splněna je (např. C).

Cyklus s podmínkou na konci má tyto vlastnosti:

  • nejprve se provede tělo a až pak se vyhodnocuje podmínka,
  • tělo se vykonává, dokud není podmínka splněna,
  • tělo se vykoná minimálně jednou,
  • počet opakování je omezen pouze podmínkou a může jich být v rozmezí 1 až nekonečno.

Možná někoho napadne: a co v případě, že podmínka je neustále splněná (pro cykus s podmínkou na začátku) nebo nebude nikdy splněná (pro cyklus s podmínkou na konci)? Odpověď je jednoduchá – jedná se o nekonečný cyklus. Jedná se o speciální typ algoritmu, který se používá pouze ve výjimečných případech (např. program v jednočipovém procesoru pro nějaké řízení, který běží neustále). Pokud se nám to stane v našem programu díky naší chybě a spustíme ho, tak se program většinou zasekne a budeme ho muset násilně ukončit.

Musí platit, že výsledek algoritmu musí být znám v konečném počtu kroků. Pokud byste neměli možnost využít cyklů a větvení, nebyly byste prakticky schopni tvořit plnohodnotné programy.

 
vytvořil Institut biostatistiky a analýz Lékařské fakulty Masarykovy univerzity