Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Následující verze | Předchozí verze | ||
| spse:pm1:pole [2021/01/25 22:49] – vytvořeno jenda | spse:pm1:pole [2024/07/07 16:48] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 | ||
|---|---|---|---|
| Řádek 11: | Řádek 11: | ||
| {{: | {{: | ||
| - | * Pro hromadnou manipulaci s prvky pole se používají cykly. | ||
| * Pole deklarujeme jako běžnou proměnnou, pouze za její název uvedeme hranaté závorky s počtem prvků: | * Pole deklarujeme jako běžnou proměnnou, pouze za její název uvedeme hranaté závorky s počtem prvků: | ||
| + | < | ||
| <code c> | <code c> | ||
| - | |||
| - | </ | ||
| int pole[10]; | int pole[10]; | ||
| - | Slovo pole je samozřejmě název naší proměnné. Nyní máme v proměnné pole pole o velikosti deseti typů int. Jelikož jsme pole teprve založili a operační systém nám pro něj přidělil nějakou paměť, kterou mohla předtím používat jiná aplikace, nemůžeme se spolehnout na to, že jsou v poli samé nuly. Stejně dobře v něm zatím mohou být libovolná náhodná čísla. | + | </ |
| + | </ | ||
| - | K prvkům pole poté přistupujeme opět přes hranatou závorku, pojďme na první index (tedy index 0) uložit číslo 1. | + | * Slovo pole je samozřejmě název naší proměnné. Nyní máme v proměnné pole pole o velikosti deseti typů int. Jelikož jsme pole teprve založili a operační systém nám pro něj přidělil nějakou paměť, kterou mohla předtím používat jiná aplikace, nemůžeme se spolehnout na to, že jsou v poli samé nuly. Stejně dobře v něm zatím mohou být libovolná náhodná čísla. |
| + | * K prvkům pole poté přistupujeme opět přes hranatou závorku, pojďme na první index (tedy index 0) uložit číslo 1. | ||
| + | ==== Plnění pole ==== | ||
| + | |||
| + | < | ||
| + | <code c> | ||
| int pole[10]; | int pole[10]; | ||
| pole[0] = 1; | pole[0] = 1; | ||
| - | Plnit pole takto ručně by bylo příliš pracné, použijeme cyklus a naplníme si pole čísly od 1 do 10. K naplnění použijeme for cyklus: | + | </ |
| + | </ | ||
| + | * Plnit pole takto ručně by bylo příliš pracné, použijeme cyklus a naplníme si pole čísly od 1 do 10. K naplnění použijeme for cyklus: | ||
| + | < | ||
| + | <code c> | ||
| int pole[10]; | int pole[10]; | ||
| int i; | int i; | ||
| Řádek 32: | Řádek 38: | ||
| pole[i] = i + 1; | pole[i] = i + 1; | ||
| } | } | ||
| - | Pozn.: i + 1 do pole ukládáme proto, že i jde od nuly a my chceme do pole uložit čísla od 1. | + | </ |
| + | </ | ||
| + | * Pozn.: i + 1 do pole ukládáme proto, že i jde od nuly a my chceme do pole uložit čísla od 1. | ||
| - | Abychom pole vypsali, můžeme za předchozí kód připsat: | ||
| - | Vyzkoušet Klikni pro editaci | + | ==== Výpis pole ==== |
| + | |||
| + | * Abychom pole vypsali, můžeme za předchozí kód připsat: | ||
| + | |||
| + | < | ||
| + | <code c> | ||
| for (i = 0; i < 10; i++) | for (i = 0; i < 10; i++) | ||
| { | { | ||
| printf(" | printf(" | ||
| } | } | ||
| - | Výsledek: | + | // Výstup: 1 2 3 4 5 6 7 8 9 10 |
| + | </ | ||
| + | </ | ||
| - | Konzolová aplikace 1 2 3 4 5 6 7 8 9 10 | + | ==== Naplnění pole při inicializaci ==== |
| - | Pole samozřejmě můžeme naplnit ručně a to i bez toho, abychom dosazovali postupně do každého indexu. Použijeme k tomu složených závorek a prvky oddělujeme čárkou: | + | |
| + | * Pole samozřejmě můžeme naplnit ručně a to i bez toho, abychom dosazovali postupně do každého indexu. Použijeme k tomu složených závorek a prvky oddělujeme čárkou: | ||
| + | |||
| + | < | ||
| + | <code c> | ||
| int cisla[] = {15, 8, 3, 10, 9, 2, 2}; | int cisla[] = {15, 8, 3, 10, 9, 2, 2}; | ||
| - | Všimněte si, že nemusíme udávat velikost pole, překladač si ji odvodí z počtu prvků ve výčtu. | + | </ |
| + | </ | ||
| + | |||
| + | * Všimněte si, že nemusíme udávat velikost pole, překladač si ji odvodí z počtu prvků ve výčtu. | ||
| + | |||
| + | * Pole často slouží k ukládání mezivýsledků, | ||
| + | |||
| + | ===== Příklad ===== | ||
| + | * Napište program s písmeny od A do K. | ||
| + | * Postupně jej ve for cyklu projděte a vypište. | ||
| - | Pole často slouží k ukládání mezivýsledků, | ||