Cyklus while-do je řídicí struktura počítačového programu a označuje cyklus, který testuje podmínku opakování cyklu vždy na počátku průběhu těla cyklu (srovnej s cyklus do-while), takže pokud zajistíme hned na počátku nesplnění podmínky cyklu, cyklus se ani jednou nevykoná. Počet průchodů cyklem může být nulový, pokud při prvním vykonání cyklu je podmínka neplatná.

Vývojový diagram cyklu while-do

Zvláštním případem cyklu while-do je for cyklus.

Příklady editovat

Všechny tyto programy vypíší čísla od 0 do 2 včetně.

Příklad v jazyku C editovat

int i = 0;
while ( i < 3 ) // opakuj, dokud je 'i' menší než 3
{
	printf("%d\n", i); // vypiš proměnou 'i' a konec řádku "\n"
	i++; // k proměnné 'i' přičti 1
}

Příklad v jazyku Pascal editovat

i:=0;
while i<3 do {opakuj, dokud je 'i' menší než 3}
begin
	writeln (i); {vypiš proměnnou i a odřádkuj}
	i:=i+1;
end

Příklad v jazyku PHP editovat

<?php
$i=0; //nastavíme výchozí hodnotu
while ($i<3) // opakuj, dokud je 'i' menší než 3
{
	echo ($i); //vypíšeme proměnou "i"
	$i++; //k proměnné "i" přičteme 1
}
?>

Příklad v jazyku Python editovat

i = 0         # nastav výchozí hodnotu proměnné i
while i < 3:  # opakuj, dokud je i menší než 3
    print(i)  # vypiš hodnotu i
    i += 1    # k proměnné i přičti 1