Lekce 8 - Příkaz(For, Switch)

GML

Příkaz <For> - pro

For = pro;

Příkaz for má tuto formu

for (<příkaz1> ; <výraz> ;<příkaz2>) <příkaz3>

Pracuje následovně. Provede se příkaz1. Potom se vyhodnotí výraz. Pokud je pravdivý, provede se příkaz3 a potom příkaz2 a výraz se znovu vyhodnotí. Tak to pokračuje dokud není výraz nepravdivý.
Zní to trochu komplikovaně. Můžeme si to vysvětlit asi následovně. První příkaz spustí smyčku. Výraz testuje, jestli může být smyčka ukončena. Příkaz2 je krokový příkaz, který změní hodnotu pro  vyhodnocení výrazu.
Nejběžnější použití je jako počítadlo běžící v nějakém rozsahu.

Příklad
Následující program nastaví desetičlenné pole proměnných (list[0] ? list[9]) na hodnoty 1- 10.

{
    for (i=0; i<=9; i+=1) list[i] = i+1;
}


Příkaz <Switch> - přepni

Switch = přepni; Case = blok; Break = přeruš; Default = standard;

Ve spoustě situací budeš potřebovat vykonat vybranou akci v závislosti na odpovídající hodnotě nějakého výrazu. Samozřejmě můžeš  použít několik příkazů If, ale jednodušší bude použít příkaz Switch. Příkaz Switch má následující formu:

switch (<výraz>)
    {
        case <výraz1>: <příkaz1>; ... ; break;
        case <výraz2>: <příkaz2>; ... ; break;
        ...
        default: <příkaz>; ...
    }

Pracuje to následovně. Nejprve se vyhodnotí výraz. Následně se výsledek porovnává s jednotlivými výrazy umístěnými za příkazy case. Provedou se příkazy za prvním výrazem s odpovídající hodnotou, až  dokud program nenarazí na příkaz break. Pokud program nenalezne příkaz case s výrazem odpovídající hodnoty, provede příkazy za příkazem default. (Příkaz default není povinný.) Do příkazu switch je  možno umístit libovolný počet příkazů case. Také příkaz break není povinný. Pokud program nenalezne příkaz break, bude jednoduše pokračovat s prováděním kódu pro další příkaz case.

Příklad
Následující program provede akci podle toho, která klávesa bude stisknuta.

switch (keyboard_key)
    {
        case vk_left:
        case vk_numpad4:
            x -= 4; break;
        case vk_right:
        case vk_numpad6:
            x += 4; break;
    }

Ještě příkaz break, continue a exit a začneme se učit funkce. Těším se na vás u další lekce.

Napsal uživatel wix