Cyklus do-while je řídicí struktura počítačového programu a označuje cyklus, který testuje podmínku opakování cyklu vždy na konci průběhu těla cyklu (srovnej s cyklus while-do). Počet průchodů cyklem je vždy alespoň jeden, vzhledem k testování podmínky na konci cyklu. Toho se dá využít například v dlouhých procesech, při kterých se například ověřují vstupní údaje. Při neplatnosti kteréhokoli z nich je třeba proces ukončit ihned.

Vývojový diagram cyklu do-while

Pokud zajistíme hned na počátku nesplnění podmínky cyklu, cyklus se vykoná jen jednou (a na výstup vypíše hodnotu proměnné i). Pokud zajistíme, že podmínka cyklu bude vždy splněna, cyklus se stává nekonečným a ukončit jeho běh jde jen násilně.

Podobný cyklus cyklu do-while je cyklus repeat-until, který vypadá a probíhá naprosto stejně, jen závěrečná podmínka je opačná. Při její nesplnění se cyklus opakuje a naopak při její splnění program z cyklu vyskočí. Tato struktura je využita v jazyce Pascal.

Příklady

editovat

Příklad v jazyce C:

int i = 0;
do {
printf("%d\n",i);
i++;
} while (i < 3);

vypíše text:

0
1
2

Jednoduchý příklad v jazyce PHP:

$i = 0;
do {
echo "Iterace ". $i . "\n";
$i++;
} while ($i < 3);

udělá to stejné, jako program v jazyce C