KURZ ALGORITMIZACE A PROGRAMOVN V JAZYCE C Lekce

  • Slides: 6
Download presentation
KURZ ALGORITMIZACE A PROGRAMOVÁNÍ V JAZYCE C Lekce č. 8: Cykly (while, do while,

KURZ ALGORITMIZACE A PROGRAMOVÁNÍ V JAZYCE C Lekce č. 8: Cykly (while, do while, for) Bc. Radek Libovický

2 LOGICKÁ HÁDANKA • Stojíte u tří vypínačů. Víte, že patří ke třem žárovkám,

2 LOGICKÁ HÁDANKA • Stojíte u tří vypínačů. Víte, že patří ke třem žárovkám, které jsou v místnosti, kam vede dlouhá a klikatá chodba - tzn. že ze svého místa vůbec nemůžete vidět, zda některá svítí nebo ne. Všechny tři vypínače jsou nyní v poloze vypnuto. S vypínači můžete manipulovat jak chcete, pak jednou projít chodbou a podívat se do místnosti. Tam musíte říci, který vypínač je od které žárovky. Jak na to? Odpověď na konci prezentace

3 CYKLUS WHILE • Cyklus while: Nejdříve se vyhodnotí podmínka, pokud je splněna, vykoná

3 CYKLUS WHILE • Cyklus while: Nejdříve se vyhodnotí podmínka, pokud je splněna, vykoná se tělo cyklu a vrátí se zpět na vyhodnocování podmínky. Takto neustále dokola, až do chvíle, kdy se podmínka vyhodnotí jako nepravdivá. Zápis cyklu while: while(a>b)//vyhodnocení podmínky (v tomto případě a>b) { //začátek těla cyklu i++; b++; } //konec těla cyklu printf("Hodnota B se musela %d krát zvětšit, aby se B=A", i);

4 CYKLUS DO WHILE • Cyklus do while: Jediný rozdíl od cyklu while je

4 CYKLUS DO WHILE • Cyklus do while: Jediný rozdíl od cyklu while je ten, že se nejdříve provede tělo cyklu a teprve poté se vyhodnocuje podmínka. Znamená to tedy, že každý cyklus do while proběhne minimálně jednou. Zápis cyklu do while: do//začátek cyklu bez vyhodnocení podmínky { //začátek těla cyklu i++; b++; } while(a>b); //konec těla cyklu a vyhodnocení podmínky

5 CYKLUS FOR • Cyklus for: Tento cyklus se používá v situacích, kdy autor

5 CYKLUS FOR • Cyklus for: Tento cyklus se používá v situacích, kdy autor přesně ví, kolikrát se má cyklus zopakovat. Zápis cyklu for: for(i=0; i<10; i++)//(start; podmínka; krok) { //tělo cyklu - konkrétně proběhne 10 krát } Start – nastavení proměnné při prvním vstupu do cyklu (i=0) Podmínka – stejná jako u while – vyhodnocuje se, zda se bude cyklus opakovat (i<10) Krok – po každém průchodu těla se proměnná i zvýší (i++)

6 ODPOVĚĎ NA LOGICKOU HÁDANKU • Zapnete první vypínač, chvíli počkáte. Poté vypnete první

6 ODPOVĚĎ NA LOGICKOU HÁDANKU • Zapnete první vypínač, chvíli počkáte. Poté vypnete první a zapnete druhý. Jděte do místnosti a jedna žárovka bude svítit, jedna bude horká a poslední zhasnutá.