Úloha 2 – Inkrementace a dekrementace – praktické příklady (část 2)

Site: Moodle ZČU
Course: Sada úloh pro procvičení v předmětu KVD/PGM1P (BP Vítek Dolný)
Book: Úloha 2 – Inkrementace a dekrementace – praktické příklady (část 2)
Printed by: Nepřihlášený host
Date: Sunday, 18 October 2026, 1:18 PM

Úvod do úlohy

V programování se velmi často setkáváme s potřebou „posunout“ hodnotu proměnné o jedna – typicky při procházení pole, v cyklech nebo při počítání něčeho. K tomu slouží speciální operátory inkrementace (++) a dekrementace (--). Díky nim nemusíme psát x = x + 1, ale můžeme jednoduše zapsat x++ nebo ++x. Na první pohled to vypadá stejně, ale pořadí operace (prefix vs. postfix) hraje velkou roli. Správné pochopení tohoto rozdílu je důležité, abychom předešli chybám v podmínkách nebo složitějších výrazech.


Teorie a principy

  • Inkrementace (++) – zvýší hodnotu proměnné o 1.

  • Dekrementace (--) – sníží hodnotu proměnné o 1.

Oba operátory existují ve dvou formách:

  1. Prefixová forma (++x nebo --x)

    • Nejprve se hodnota proměnné změní a pak se vrátí nová hodnota.

  2. Postfixová forma (x++ nebo x--)

    • Nejprve se vrátí původní hodnota, a teprve potom se proměnná změní.


Praktické příklady kódu


Použití v cyklu:

 


Složitější výrazy:

 


Typické chyby / záludnosti

  • Záměna prefixu a postfixu: studenti často nerozliší, kdy se hodnota změní a kdy se vrací původní.

  • Používání v komplikovaných výrazech: kombinace x++ + ++x vede k nepřehlednému kódu a obtížně předvídatelným výsledkům.

  • Přílišná závislost na vedlejších efektech: doporučuje se ++ a -- používat hlavně samostatně nebo v cyklech, ne v těžko čitelných výrazech.


Shrnutí

  • ++ zvyšuje hodnotu o 1, -- snižuje hodnotu o 1.

  • Prefix (++x): změní hodnotu a pak vrátí novou.

  • Postfix (x++): vrátí původní hodnotu a až poté proměnnou změní.

  • Rozdíl se projeví zejména v kontextu složitějších výrazů a podmínek.

  • Pro čitelnost kódu je vhodné vyhnout se kombinování více inkrementací/dekrementací v jedné řádce.

Úloha

Zadání (kontext úlohy)

Chceme si vyzkoušet, jak se chová prefixová a postfixová forma operátorů ++ a --.
Pomocí jednoduchých příkladů zjistíme rozdíl mezi „nejdřív změnit“ a „nejdřív vrátit, pak změnit“.


Cíl úlohy

Procvičíš si práci s operátory inkrementace a dekrementace a naučíš se rozeznat rozdíl mezi prefixovou a postfixovou formou.


Vstupní podmínky
  • Pracuj pouze s nově vytvořeným souborem script.js, který připojíš do HTML.


Požadovaný výstup
  1. Vytvoř proměnnou cislo s libovolnou číselnou hodnotou.

  2. Vyzkoušej:

    Sleduj rozdíl v chování a popiš ho do komentáře.

  3. Vytvoř proměnné x a y tak, že do y uložíš výraz obsahující ++x a do jiné proměnné výraz s x++.

    • Výsledky vypiš do konzole a slovně okomentuj, co se stalo.

  4. Přidej krátký cyklus for, ve kterém použiješ i++ a zobrazíš postupné hodnoty.


Doplňující pokyny
  • Využívej console.log() k porovnání výsledků.

  • Nepiš více inkrementací/dekrementací v jednom výrazu, aby byl kód čitelný.

  • Pokud si nejsi jistý, přidej si k výpisům i textový komentář, co očekáváš.


Soubor

Odkaz na html soubor

Řešení úlohy

Co je zde splněno:

  • Proměnná cislo s číselnou hodnotou, vyzkoušeny oba zápisy ++cislo a cislo++.

  • Vysvětlen rozdíl pomocí přiřazení do y (prefix) a z (postfix).

  • Přidán cyklus for, kde se používá i++ a vypisují se hodnoty.

  • console.log() výstupy jsou doplněné komentáři a texty, aby byl rozdíl jasně patrný.