7. ročník › Informatika › Informatika

Programovanie – cykly a premenné Nezačaté

0 Vstupný test1 Poučka 2 Vysvetlenie3 Príklady 4 Kvíz5 Test 6–8 Vyhodnotenie9 Výstupný test
Krok 0 — Vstupný test

Skús najprv, čo už vieš. Výsledok = tvoja vstupná úroveň (porovnáš ho s tým, čo budeš vedieť po naučení).

0. Kľúčové fakty

  1. Premenná (variable) — Premenná je pomenované miesto v pamäti počítača, kam si program ukladá hodnotu (číslo, text alebo logickú hodnotu) a môže ju počas behu meniť. Predstav si ju ako škatuľku s menom, do ktorej vložíš obsah a kedykoľvek ho prečítaš alebo prepíšeš. Vďaka premenným si program „pamätá" údaje, napríklad skóre v hre alebo počet opakovaní, a pracuje s nimi aj vtedy, keď ich vopred nepoznáme.

  2. Priradenie hodnoty (=) — Priradenie znamená vloženie hodnoty do premennej, napríklad pocet = 0 nastaví premennej pocet hodnotu nula. V programovaní znak = neznamená rovnosť ako v matematike, ale príkaz „nastav premennej túto hodnotu". Zápis pocet = pocet + 1 preto nie je nezmysel — vezme starú hodnotu, pripočíta jednotku a výsledok uloží späť, čím premennú zvýši.

  3. Cyklus (loop) — Cyklus je riadiaca štruktúra, ktorá umožní opakovať ten istý blok príkazov viackrát bez toho, aby sme ich písali znova a znova. Namiesto desiatich riadkov „choď dopredu" napíšeme jeden cyklus, ktorý príkaz zopakuje desaťkrát. Cykly sú jedným zo základných stavebných prvkov algoritmov, lebo počítače vynikajú práve v rýchlom opakovaní rovnakej činnosti.

  4. Cyklus s pevným počtom opakovaní (opakuj N-krát) — Tento typ cyklu vykoná telo presne toľkokrát, koľko vopred určíme, napríklad „opakuj 4-krát" pri kreslení štvorca. Používa sa vtedy, keď počet opakovaní poznáme dopredu. V prostredí Scratch je to blok „opakuj ( )", v textových jazykoch zodpovedá príkazu for, ktorý beží napríklad od 1 do 10.

  5. Cyklus s podmienkou (opakuj, kým / while) — Tento cyklus opakuje príkazy dovtedy, kým platí (alebo neplatí) určitá podmienka, napríklad „opakuj, kým sa nedotkneš okraja". Hodí sa, keď vopred nevieme, koľko opakovaní bude treba — počet závisí od toho, čo sa deje počas behu programu. Dôležité je, aby sa podmienka raz zmenila, inak by cyklus bežal donekonečna.

  6. Nekonečný cyklus — Nekonečný cyklus je taký, ktorý sa nikdy nezastaví, lebo jeho podmienka stále platí alebo chýba spôsob ukončenia. Niekedy ho chceme zámerne (napr. „stále" v hre, ktorá beží, kým ju nevypneme), inokedy vznikne omylom ako chyba a program „zamrzne". Preto pri cykloch s podmienkou vždy kontrolujeme, či sa podmienka časom naozaj splní a cyklus skončí.

  7. Riadiaca premenná cyklu (počítadlo) — Počítadlo je premenná, ktorá si pamätá, koľkýkrát už cyklus prebehol, a po každom kole sa zvyčajne zvýši o jednotku. Vďaka nej môže program vedieť „som v treťom opakovaní" a podľa toho meniť svoje správanie. Počítadlá sa často používajú na sčítanie hodnôt, číslovanie krokov alebo na zastavenie cyklu po dosiahnutí cieľa.

  8. Telo cyklu a odsadenie — Telo cyklu sú príkazy, ktoré sa opakujú; v blokových prostrediach sú vizuálne vnorené dovnútra bloku, v textových jazykoch sa označujú odsadením (medzerami). Správne určenie, čo patrí dovnútra cyklu a čo už mimo neho, rozhoduje o tom, či program funguje. Príkaz mimo tela cyklu sa vykoná len raz, hoci je tesne pod ním.

  9. Vnorený cyklus (cyklus v cykle) — Vnorený cyklus je cyklus umiestnený vnútri iného cyklu; vonkajší cyklus spustí ten vnútorný pri každom svojom opakovaní. Používa sa napríklad pri kreslení mriežky, kde jeden cyklus rieši riadky a druhý stĺpce. Celkový počet opakovaní sa násobí — pri 3 a 4 opakovaniach sa telo vykoná 3 · 4 = 12-krát.

  10. Detské programovacie prostredie (Scratch) — Scratch je vizuálne prostredie, kde sa program skladá z farebných blokov, ktoré do seba zapadajú ako puzzle, takže sa netreba učiť presný zápis a vyhneme sa preklepom. Postavička (sprite) na scéne vykonáva príkazy a žiak hneď vidí výsledok, čo uľahčuje pochopenie cyklov a premenných. Práve v takomto prostredí sa najľahšie testuje algoritmus krok po kroku.

  11. Algoritmus — Algoritmus je presný a konečný postup krokov, ktorý vedie k vyriešeniu úlohy, podobne ako recept alebo návod. Skôr než začneme programovať, premyslíme si algoritmus — čo má program robiť a v akom poradí. Cykly a premenné sú nástroje, ktorými algoritmus zapíšeme tak, aby mu počítač rozumel a vykonal ho.

  12. Podmienka (ak – then) — Podmienka umožní programu rozhodnúť sa: „ak platí toto, urob tamto", napríklad „ak sa dotkneš steny, otoč sa". V kombinácii s cyklami vytvára programy, ktoré reagujú na okolnosti a nie sú len mechanickým opakovaním. Podmienka pracuje s logickými hodnotami pravda/nepravda a je základom inteligentného správania programu.

  13. Ladenie a hľadanie chýb (debugging) — Ladenie je hľadanie a opravovanie chýb (bugov) v programe, keď nerobí to, čo sme očakávali. Pri cykloch býva častou chybou zlý počet opakovaní alebo zabudnutá zmena premennej, ktorá vedie k nekonečnému cyklu. Programátor program spúšťa po krokoch, sleduje hodnoty premenných a postupne odhaľuje, kde sa postup pokazil.

1. Poučka

Premenná je pomenované miesto v pamäti, kam si program odkladá hodnotu (číslo, text), ktorá sa môže meniť. Cyklus je príkaz, ktorý zopakuje časť programu viackrát, aby sme nemuseli ten istý príkaz písať dookola. Programy zostavujeme z algoritmu — presného postupu krokov, ktoré vedú k vyriešeniu úlohy.

2. Vysvetlenie

  • Premenná funguje ako škatuľka s menom. Napríklad skore = 0 znamená: vytvor škatuľku s menom skore a daj do nej 0. Hodnotu vieš kedykoľvek zmeniť, napr. skore = skore + 1.
  • Priradenie (znak = alebo šípka ←) vloží hodnotu do premennej. Vždy sa najprv vypočíta pravá strana a výsledok sa uloží do premennej vľavo.
  • Cyklus „opakuj N-krát“ (počítaný cyklus) zopakuje príkazy presne určený počet ráz, napr. „opakuj 4-krát: choď dopredu, otoč sa o 90°“.
  • Cyklus „pokiaľ platí podmienka“ (podmienený cyklus, while) opakuje, kým je splnená nejaká podmienka, napr. „pokiaľ nie si pri stene: choď dopredu“.
  • Počítadlo je premenná, ktorá v cykle ráta, koľkokrát sa niečo stalo (napr. i = i + 1).
  • Pri zostavovaní programu: 1. rozmysli postup (algoritmus), 2. urči, čo si treba zapamätať (premenné), 3. nájdi, čo sa opakuje (cyklus), 4. otestuj a oprav chyby.

3. Príklady a prečo je to dôležité

  1. Kreslenie štvorca v Scratchi: namiesto 8 príkazov napíšeš „opakuj 4-krát: choď 100 krokov, otoč sa o 90°“. Cyklus skráti a sprehľadní program.
  2. Počítanie skóre v hre: premenná skore začína na 0 a po každom chytenom jablku sa zvýši o 1 (skore = skore + 1). Bez premennej by hra nevedela, koľko bodov máš.
  3. Odpočítavanie: premenná cas = 10 a cyklus „pokiaľ cas > 0: zníž cas o 1, počkaj 1 sekundu“ vytvorí časomieru.
  4. Z praxe – výplata a tabuľky: tabuľkový procesor (Excel) ráta súčet stoviek riadkov v cykle; banka cyklom prejde všetky platby na výpise.
  5. Z praxe – semafory a roboty: semafor opakuje cyklus zelená→oranžová→červená stále dokola; robotický vysávač opakuje „pokiaľ nie je čisto: jazdi a uhýbaj“.

Prečo je to dôležité: cykly a premenné sú základ KAŽDÉHO programu — od hier cez mobilné aplikácie po riadenie strojov. Bez nich by sme museli každý opakujúci sa krok písať ručne, čo je pri tisícoch opakovaní nemožné. Naučíš sa rozmýšľať v postupoch (algoritmoch), čo pomáha aj v matematike a logickom uvažovaní.

Krok 4 — Kvíz (over si pochopenie)
Krok 5 — Test (precvič sa)
  1. Napíš pomocou cyklu „opakuj N-krát“ program, ktorý nakreslí rovnostranný trojuholník. Urči počet opakovaní aj uhol otočenia.
  2. Vytvor premennú pocet = 0 a navrhni cyklus, ktorý ju zvýši o 1 pri každom kliknutí myšou. Po koľkých kliknutiach bude mať hodnotu 5?
  3. Premenná cas = 10. Slovne opíš podmienený cyklus, ktorý odpočítava cas po jednom až po 0 a potom zobrazí „Koniec“.
  4. Nájdi chybu: program má cyklus „pokiaľ x < 5: ukáž x“, ale x sa v cykle nikdy nemení. Čo sa stane a ako to opravíš?
  5. Premenná i = 1. Cyklus sa štyrikrát vykoná s príkazom i = i · 2. Vypočítaj, akú hodnotu bude mať i na konci.

Cvičné príklady. Reálne testové otázky doplníme po overení.

Krok 9 — Výstupný test (zvládol / nezvládol)

Záverečný hodnotený test témy. Výsledok uvidí aj rodič. Zvládnutie = aspoň 80 %.

← Späť na katalóg