Zadání 2 – Editor příkazů

Rozšiř předchozí aplikaci tak, aby uživatel mohl zadávat příkazy, které mění stav aplikace. Uživatel zadá text do vstupu a zvolí typ akce (např. Přidat, Mazat zprava, Mazat zleva, Vyčistit). Po potvrzení aplikace provede odpovídající operaci nad stavem a vypíše jasnou zpětnou vazbu. Chování aplikace se liší podle zvoleného režimu a podle aktuálního stavu (např. nelze mazat z prázdné historie). Rozhodovací logika musí být přehledná a musí kombinovat více podmínek.

Cíl úlohy
  • Procvičit řízení toku programu pomocí rozhodovacích struktur (if / else if / switch).

  • Využít logické operátory (&&, ||) pro ošetření složitějších vstupních scénářů.

  • Použít switch pro výběr typu operace a default pro neplatný režim.

  • Zajistit striktní porovnávání hodnot při rozhodování (např. ===).

  • Vytvořit funkce s parametrem pro zobecnění operací nad stavem a použít return pro zpracování výsledku.

  • Rozšířit validaci o více typů chybových stavů a diferencovanou zpětnou vazbu.

Vstupní podmínky
  • Navazuje na řešení úlohy Historie vstupů.

  • Struktura HTML a základní stylování jsou k dispozici.

Požadovaný výstup
  • Vstupní pole pro text.

  • Volba režimu (např. select nebo skupina tlačítek): ADD, DEL_RIGHT, DEL_LEFT, CLEAR.

  • Tlačítko Provést akci.

  • Výpis aktuální hodnoty a historie (textově).

  • Zřetelné hlášky pro různé situace: prázdný vstup, prázdná historie, neznámá akce apod.

  • Povinné české komentáře v JS.

Doplňující pokyny
  • Použij sémantické prvky main, section, h1, h2, p.

  • Kód strukturovat do funkcí: zpracování akce, aktualizace výpisu, validace.

  • Žádné čistě vizuální efekty bez smysluplné vazby na logiku.