====== Cyklus for ======
Pro zápis cyklu s řídící proměnnou nám slouží syntaktická struktura s názvem **for**. Typickým použitím cyklu for je procházení hodnot v definovaných mezích. (zdola-nahoru, shora-dolů)
Cyklus for se skládá z několika částí:
* hlavička
* inicializační část - deklaruje/definuje řídící proměnnou
* podmínka cyklu
* aktualizační část - aktualizuje hodnotu řídící proměnné
* tělo cyklu - vlastní příkaz, nebo blok kódu, který se bude vykonávat
===== Syntaxe cyklu for =====
// S jedním příkazem v těle
for (inicializace; podminka; aktualizace)
prikaz;
// S blokem příkazů v těle
for (inicializace; podminka; aktualizace)
{
prikaz1;
prikaz2;
//...
}
==== Poznámky ====
* Při zachování středníků se dá libovolná část hlavičky vynechat - //vyzkoušejte efekt//
* Podmínka cyklu nemusí být platná už před první iterací. Cyklus pak nevykoná ani jednu iteraci.
* Cykly while a for se dají mezi sebou navzájem transformovat.
* Při použití operátoru //čárka//, lze v libovolné části hlacičky vykonávat více operací. //[[https://en.wikipedia.org/wiki/Comma_operator|Comma operator]]//
===== Průběh cyklu for =====
- **inicializační část**
- **ověření podmínky**
- podmínka platí
- **vykonání těla cyklu**
- **aktualizační část**
- opakuj krok 2.
- podmínka neplatí
- **konec cyklu**
===== Ukázky =====
==== Výpis čísel od 1 do 10 pomocí cyklu for ====
for (int cislo = 1; cislo <= 10; cislo++)
printf("%d\n", cislo);
==== Ekvivalentní výpis čísel od 1 do 10 pomocí cyklu while ====
int cislo = 1; // Inicializační část
while (cislo <= 10) // Podmínka cyklu
{
printf("%d\n", cislo); // Příkaz cyklu
cislo++; // Aktualizační část
}
==== Vypsání prvků pole o kapacitě 42 ====
double pole[42] = {};
// inicializace prvků pole
for (int i = 0; i < 42; i++)
{
printf("%f", pole[i]);
if (i != 41)
printf(", ");
}
putchar('\n');