Cyklus while

Představte si, že potřebujete vypsat čísla od 1 do 100. Mohli byste stokrát napsat console.log(), ale trvalo by to věčnost a jakákoli pozdější změna by byla ještě horší. Programy takovou opakovanou práci dělají pořád: projdou všechny studenty v seznamu, zkontrolují každé zboží v obchodě nebo 60krát za sekundu překreslí obrazovku hry. K tomu slouží cykly. Cyklus je část kódu, která se provádí znovu a znovu.

Nejjednodušší je cyklus while (dokud). Opakuje blok kódu, dokud platí jeho podmínka:

let cislo = 1;
while (cislo <= 5) {
    console.log(cislo);
    cislo = cislo + 1;
}

Vypíše:

1
2
3
4
5

Cyklus while vypadá podobně jako if: klíčové slovo, podmínka v kulatých závorkách a blok kódu ve složených závorkách. Rozdíl je v tom, že if provede svůj blok nejvýše jednou, kdežto while se k podmínce stále vrací. Krok za krokem:

  1. Program vytvoří proměnnou cislo s hodnotou 1.
  2. Zkontroluje podmínku cislo <= 5. Platí (je true), takže provede blok: vypíše 1 a zvýší cislo na 2.
  3. Vrátí se k podmínce. 2 <= 5 stále platí, takže vypíše 2 a zvýší cislo na 3.
  4. A tak dále, dokud nebude cislo rovno 6. Pak podmínka neplatí (je false), cyklus skončí a program pokračuje kódem za cyklem.

Jednomu provedení bloku se říká průchod cyklem neboli iterace. Tento cyklus má pět průchodů. Kdybyste chtěli vypsat čísla až do 100, stačilo by změnit 5 na 100.

Dejte si pozor na cykly, které nikdy neskončí. Když zapomenete na řádek cislo = cislo + 1;, zůstane cislo stále 1, podmínka bude platit pořád a cyklus bude donekonečna vypisovat 1. Takovému cyklu se říká nekonečný cyklus. V těchto cvičeních se takový program po 5 sekundách zastaví s hláškou Program běžel příliš dlouho, a proto byl zastaven. Není v něm nekonečný cyklus? Když ji uvidíte, zkontrolujte, že cyklus mění proměnnou ze své podmínky tak, aby podmínka jednou přestala platit.

Pokyny

Vytvořte proměnnou cislo s hodnotou 10. Použijte let, protože cyklus bude její hodnotu měnit.

Pod ni napište cyklus while, který poběží, dokud bude cislo menší nebo rovno 20. V cyklu vypište cislo a potom ho zvyšte o 1. Program vypíše čísla od 10 do 20, každé na samostatném řádku.

Teď v kódu změňte jedno číslo tak, aby cyklus vypsal všechna čísla od 10 do 100.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

Zpět

1/12

Další