← Přehled všech hodin

Proměnné a datové typy

Cíl hodiny: Děti chápou, že hodnoty v programu mají různé typy, umí je uložit do proměnné a vědí, proč "5" + 5 skončí chybou.
Jak stránku používat: vpravo nahoře je tlačítko Prezentace — schová všechno kromě jednoho bloku a přepíná se šipkami. U ukázek a cvičení je kód vlevo editovatelný: uprav ho a klikni na Spustit (nebo Ctrl+Enter), výsledek se objeví vpravo. Běží to přímo v prohlížeči, bez instalace.

1. Část pro učitele

Poznámky pro učiteleJak dnešní hodinu vést1. Část pro učitele

Dnešní hlavní cíl je jednoduchý: dostat děti k tomu, aby viděly, že jedno číslo nahoře v souboru může ovlivnit víc míst najednou. To je přesně chvíle, kdy proměnné přestanou být „teorie" a začnou dávat smysl.

Fáze Co se děje Čas
Opakování Krátké připomenutí minulé hodiny a app.py 5 min
Výklad Bloky 2–7, krátké živé ukázky a otázky 30 min
Projekce Tři ukázky v sekci 2 20 min
Cvičení Děti pracují samy, vy obcházíte 55 min
Závěr Sdílení výsledků a domácí úkol 5 min
Hlavní myšlenka dneška

Nejdůležitější není naučit názvy typů zpaměti. Důležitější je, aby dítě chápalo čtyři věci:

  1. proměnná je místo, kde je uložená hodnota,
  2. = znamená ulož, ne matematické rovnítko,
  3. text a číslo se nechovají stejně,
  4. z několika základních hodnot se dají dopočítat další.
Blok 1Co je proměnná1. Část pro učitele

Proměnná je krabička se štítkem. Na štítku je jméno a uvnitř je hodnota. Když chceš obsah změnit, prostě do stejné krabičky uložíš něco nového.

Tady je důležité číst znaménko = správně.

zivoty = 100 se nečte „zivoty se rovná 100", ale „do proměnné zivoty ulož hodnotu 100".

A řádek zivoty = zivoty - 30 znamená: „vezmi starou hodnotu, odečti 30 a výsledek zase ulož pod stejné jméno".

V matematice by zápis x = x - 30 nedával smysl. V programu je to úplně normální, protože to není rovnice, ale návod.

zivoty = 100
zivoty = zivoty - 30

Všimni si pořadí.

Na prvním řádku se hodnota vytvoří. Na druhém řádku se vezme to, co tam už bylo, něco se s tím udělá a výsledek se uloží zpátky.

Právě proto je důležité pořadí řádků. Kdybys druhý řádek přesunul nahoru, Python by ještě nevěděl, co zivoty je.

Blok 2Datové typy — co je uvnitř krabičky1. Část pro učitele

Počítač potřebuje vědět, jaký druh věci v proměnné je. Text se chová jinak než číslo. Číslo můžeš násobit, text můžeš spojovat. Kdyby se to nerozlišovalo, počítač by nevěděl, co přesně má udělat.

Typ Česky Příklad K čemu ve hře
str řetězec, text "Arkon" jméno, popis místnosti
int celé číslo 100 životy, zlato, úroveň
float desetinné číslo 1.5 násobitel poškození
bool ano/ne True má klíč, je naživu

Každý typ se hodí na něco jiného.

Zkus si všimnout, že True není text "True". Je to zvláštní typ, který umí jen dvě hodnoty: True a False.

Funkce type(...).__name__ ti ukáže, jak se ten typ jmenuje uvnitř Pythonu. Nemusíš si to hned pamatovat do detailu — důležité je hlavně to, že různé druhy hodnot existují a Python je rozlišuje.

Blok 3Plus má dva významy1. Část pro učitele

Znaménko + není vždycky totéž. Záleží na tom, s jakým typem pracuješ.

Stejné znaménko, dvě různé práce.

U čísel + sčítá. U textů + spojuje.

Když smícháš číslo a text, Python se zastaví, protože neví, jestli má sčítat, nebo lepit.

Tohle je přesně důvod, proč datové typy řešíme už dneska. Bez nich by nešlo poznat, co vlastně po programu chceš.

Když se typy nepotkají, dá se to opravit.

  • int("3") vezme text "3" a udělá z něj číslo 3
  • str(5) vezme číslo 5 a udělá z něj text "5"

Tomuhle se říká přetypování. Není to trest ani magie — jen přesně řekneš, co má Python s hodnotou udělat.

Blok 4F-string — nejpohodlnější způsob, jak míchat text a hodnoty1. Část pro učitele

Když chceš ve větě ukázat proměnné, existuje víc možností. Nejčistší bývá f-string.

Všechny tři řádky fungují, ale nejsou stejně pohodlné.

První varianta je zbytečně ukecaná. Druhá je v pohodě. Třetí bývá nejčitelnější, protože text vypadá skoro jako hotová věta.

Písmeno f před uvozovkami znamená: „uvnitř budou složené závorky a do nich dosaď hodnoty".

Proto se f-string hodí skoro všude, kde chceš spojit text, čísla nebo výsledek výpočtu.

f"{zivoty * 2}"
f"{1/3:.2f}"
f"{zivoty:>5}"

F-string umí i víc než jen dosazovat.

  • f"{zivoty * 2}" nejdřív spočítá výraz a pak ho vloží do textu
  • f"{1/3:.2f}" zaokrouhlí číslo na dvě desetinná místa
  • f"{zivoty:>5}" zarovná text doprava na šířku pěti znaků

To poslední se hodí hlavně později, když chceš hezky srovnat výpisy pod sebe. Dnes si z toho stačí odnést, že f-string zvládne i počítání a formátování.

Blok 5Odvozené hodnoty — jedna změna, všechno se přepočítá1. Část pro učitele

Tady začínají být proměnné opravdu užitečné. Místo ručního přepisování na pěti místech změníš jedno číslo a ostatní se dopočítá samo.

# Méně šikovné
st.write("Životy: 72 ze 100")
st.progress(0.72)

# Lepší
max_zivoty = 100
zivoty = 45

st.write(f"Životy: {zivoty} z {max_zivoty}")
st.progress(zivoty / max_zivoty)

V prvním zápisu máš stejné informace napsané víckrát.

Když chceš změnit 72 na 45, musíš si vzpomenout i na 0.72 a přepsat ho na 0.45. To je přesně typ práce, u které člověk dělá chyby.

V druhém zápisu měníš jen základní hodnoty a zbytek se dopočítá sám. Právě tohle je jeden z hlavních důvodů, proč programátoři proměnné používají.

Tady už jedna hodnota ovlivňuje víc věcí najednou.

Zkus se podívat, kolik řádků závisí na zraneni. Nejen počet životů, ale i progress bar a procenta zdraví.

Stejně fungují skoro všechny lepší programy: nahoře jsou základní hodnoty a pod nimi všechno, co se z nich odvodí.

Blok 6Pojmenování proměnných1. Část pro učitele

Jméno proměnné by mělo co nejrychleji napovědět, co je uvnitř.

  • musí začínat písmenem nebo podtržítkem, ne číslicí
  • nesmí obsahovat mezeru — místo ní použij _
  • rozlišuje se velikost písmen: zivoty a Zivoty jsou dvě různé proměnné
  • doporučujeme psát bez diakritiky — zivoty, ne životy
zivoty = 100          ✅
zivoty_hrace = 100    ✅
2zivoty = 100         ❌
zivoty hrace = 100    ❌
Zivoty a zivoty       nejsou totéž

Dobré jméno šetří čas.

x nebo a1 se píšou rychle, ale za chvíli už nevíš, co znamenají. Naopak zivoty_hrace, max_zivoty nebo ma_klic řeknou všechno skoro hned.

Když píšeš jméno proměnné, představ si, že se k souboru vrátíš za měsíc. Jestli ho i tehdy pochopíš, je jméno dobré.

Poznámky pro učiteleTechnické pozadí — jen pro vás1. Část pro učitele

Python je dynamicky typovaný. Proměnná nemá typ napevno, typ má hodnota, která je v ní právě uložená.

x = 10        # x nyní odkazuje na int
x = "deset"   # totéž jméno, jiný typ

To je rozdíl oproti C# nebo Javě, kde by int x zůstalo int napořád. Pro děti je to výhoda — nemusí typy zapisovat. Nevýhoda je, že chyba typu se ukáže až za běhu. Právě proto je užitečné nechat je občas schválně narazit na TypeError a pak společně přečíst, co znamená.

Co stojí za zdůraznění
  • = je příkaz pro uložení, ne matematické rovnítko
  • + se chová jinak u čísel a u textu
  • přetypování int() a str() je záchrana, když se typy nepotkají
  • odvozené hodnoty dávají proměnným smysl mnohem víc než samotná definice

2. Ukázky pro projekci

Jak ukázky používat: kód vlevo je editovatelný. Klikni na Spustit, sleduj výsledek vpravo a pak zkus měnit čísla, texty i typy hodnot. Když se něco rozbije, vrať se tlačítkem Původní kód na začátek.
Ukázka Co ukazuje Čas
1 Čtyři datové typy a jejich názvy 8 min
2 Proč + někdy sčítá a jindy spojuje 10 min
3 Jak se z několika základních hodnot dopočítá zbytek 10 min
Blok 7Ukázka 1 — Čtyři typy na kartě hrdiny2. Ukázky pro projekci

Krátká ukázka, ve které jsou vedle sebe všechny čtyři základní typy, se kterými dnes budeš pracovat.

demo/demo1_typy.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Studenti zkuste změnit
  1. Přepiš jmeno a povolani na vlastní postavu.
  2. Změň zivoty = 72 na jiné číslo a všimni si, že typ zůstává int.
  3. Změň nasobitel = 1.5 třeba na 2.75 a sleduj, že typ je pořád float.
  4. Prohoď True a False u proměnných ma_klic a je_otraveny.
  5. Zkus dát zivoty = "72" do uvozovek. Typ se změní z int na str.
Blok 8Ukázka 2 — Plus má dva významy2. Ukázky pro projekci

Tahle ukázka ukazuje jednu z nejběžnějších chyb začátečníků: míchat text a čísla, jako by to bylo totéž.

demo/demo2_scitani.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Studenti zkuste změnit
  1. Změň 5 + 3 třeba na 12 + 7 a ověř, že se stále sčítá.
  2. Změň "5" + "3" na "drak" + "obří" a všimni si, že se texty jen slepí.
  3. Přepiš zivoty = 72 na jiné číslo a sleduj, že f-string větu upraví sám.
  4. Zkus si nahlas říct, kdy použít int() a kdy str().
Blok 9Ukázka 3 — Odvozené hodnoty2. Ukázky pro projekci

Jedno číslo se změní a několik dalších řádků se přepočítá samo. Přesně tohle je důvod, proč proměnné nejsou jen ozdobná jména.

demo/demo3_odvozene.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Studenti zkuste změnit
  1. Změň zraneni = 38 a sleduj, kolik věcí se přepočítá najednou.
  2. Změň uroven = 3 na vyšší číslo a všimni si, že naroste poškození.
  3. Zkus max_zivoty = 200 a sleduj, jak se změní progress bar i procenta.
  4. Najdi řádek s je_zraneny a odhadni, kdy bude True a kdy False.
Blok 10Když se něco pokazí2. Ukázky pro projekci

Než se pustíš do cvičení, mrkni na tuhle tabulku. Chyby nejsou ostuda. Většinou jen ukazují, že se potkaly dva různé typy nebo že někde chybí řádek.

Chyba Příčina Řešení
TypeError: can only concatenate str Sčítá text s číslem str() nebo f-string
NameError: name 'zivoty' is not defined Překlep nebo použití před vytvořením Zkontrolovat pořadí řádků
Progress bar hlásí chybu Hodnota mimo 0–1 Dělit maximem: zivoty / max_zivoty
SyntaxError u f-stringu Chybí f před uvozovkou Doplnit f
Hodnota se „nepřepsala" Zapomenuté přiřazení: zivoty - 10 místo zivoty = zivoty - 10 Výsledek je nutné uložit
Jak číst chybovou hlášku

Použij tenhle postup:

  1. Nezavírej ji hned. Chybová hláška je nápověda, ne trest.
  2. Čti od konce. Poslední řádek většinou říká, co je špatně.
  3. Najdi číslo řádku. Tam se běž podívat jako první.
  4. Mrkni i o řádek výš. Často chybí závorka, čárka nebo f na předchozím řádku.

Programátor není člověk, který nedělá chyby. Programátor je člověk, který je umí přečíst.

3. Cvičení

Jak cvičení používat: zadání je vidět hned, části Pro učitele a Řešení jsou schované v rozbalovacích sekcích. Kód můžeš upravovat přímo vlevo, spouštět ho a zkoušet vlastní varianty.
Blok 11Cvičení 1 — Karta se čtyřmi typy (15 min)3. Cvičení

Vytvoř kartu své postavy, ve které použiješ všechny čtyři datové typy.

  1. Vytvoř proměnnou typu str — jméno postavy
  2. Vytvoř dvě proměnné typu int — životy a zlato
  3. Vytvoř proměnnou typu float — třeba rychlost nebo násobitel
  4. Vytvoř proměnnou typu bool — má klíč / umí létat / je neviditelný
  5. Všechno vypiš na stránku pomocí st.write
Úroveň Co má zvládnout
Minimum Body 1–5, všechny typy použité
Rozšíření Použít type(promenna).__name__ a u každé hodnoty vypsat její typ
Výzva Přidat 8 vlastností a rozdělit je do dvou sloupců přes st.columns(2)
cviceni/cviceni1_typy.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Pro učitele — na co si dát pozor

Očekávaný výsledek: karta postavy, kde je vidět text, dvě čísla, desetinné číslo a hodnota True nebo False.

Kde se zaseknou:

  • True a False píšou malými písmeny jako true a false
  • desetinné číslo píšou s čárkou místo tečky (2,5 místo 2.5)
  • typ vypíšou jako type(jmeno) a vyděsí je dlouhý zápis — ukažte .__name__
  • rychlejší děti rády přidají další vlastnosti, ale zapomenou je pak opravdu vypsat

Kdo je hotový dřív: ať přidá druhý sloupec, emoji v nadpisu nebo krátkou větu ve f-stringu, která spojí jméno, povolání a jednu číselnou vlastnost.

Řešení 1 — jedna z možných variant
reseni/reseni1_typy.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Blok 12Cvičení 2 — Oprava chybného kódu (15 min)3. Cvičení

Tenhle program spadne. Najdi a oprav tři chyby. Nesmíš přepsat celý program, jen ho opravit.

  1. Spusť program a přečti si chybovou hlášku
  2. Najdi, na kterém řádku chyba je
  3. Oprav ji pomocí str() nebo int()
  4. Spusť znovu a najdi další chybu
  5. Nakonec přepiš všechny výpisy na f-stringy
Úroveň Co má zvládnout
Minimum Program se spustí bez chyby
Rozšíření Bod 5 — všechny výpisy jsou f-stringy
Výzva Přidat vlastní chybu, nechat souseda ji najít
cviceni/cviceni2_oprava.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Pro učitele — na co si dát pozor

Očekávaný výsledek: program doběhne bez chyby a všechny věty dávají smysl.

Kde se zaseknou:

  • opraví první chybu, ale neuvědomí si, že musí spustit program znovu a hledat další
  • změní zlato = "25" na 25, ale pak nechají první a třetí výpis starým stylem
  • u třetí chyby zkusí str(zivoty) / 2, čímž si vytvoří novou chybu
  • místo opravy kódu smažou celý problémový řádek

Dobrý postup: vždycky přečíst poslední řádek hlášky, najít řádek v kódu, opravit jen to jedno a spustit znovu.

Řešení 2 — jedna z možných variant
reseni/reseni2_oprava.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Blok 13Cvičení 3 — Kalkulačka poškození (20 min)3. Cvičení

Postav kartu, kde se všechno počítá samo z několika základních hodnot.

  1. Vytvoř proměnné: sila, zbran_bonus, uroven
  2. Spočítej poskozeni = (sila + zbran_bonus) * uroven
  3. Spočítej poskozeni_kriticke = poskozeni * 2
  4. Vytvoř max_zivoty a zraneni, spočítej z nich aktuální životy
  5. Zobraz životy pomocí st.progress(zivoty / max_zivoty)
Úroveň Co má zvládnout
Minimum Body 1–3, poškození se spočítá
Rozšíření Body 4–5, funkční progress bar
Výzva Přidat st.metric s delta a spočítat procenta na 1 desetinné místo
cviceni/cviceni3_kalkulacka.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Pro učitele — na co si dát pozor

Očekávaný výsledek: změna jednoho čísla nahoře přepočítá poškození, životy i progress bar.

Kde se zaseknou:

  • zapomenou závorky u (sila + zbran_bonus) * uroven
  • do st.progress() pošlou celé zivoty místo podílu zivoty / max_zivoty
  • přepíšou odvozenou hodnotu ručně místo výpočtu (zivoty = 62)
  • výpis nechají jako "???" a myslí si, že úkol je hotový

Kdo je hotový dřív: ať přidá st.metric pro poškození a kritický zásah, nebo vypíše procenta zdraví přes {podil * 100:.1f}.

Řešení 3 — jedna z možných variant
reseni/reseni3_kalkulacka.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Blok 14Cvičení 4 — Převodník jednotek (20 min)3. Cvičení

Ve hře máme vzdálenosti v krocích. Udělej převodník.

  1. Vytvoř proměnnou kroky = 1500
  2. Spočítej metry: jeden krok je 0.75 metru
  3. Spočítej kilometry
  4. Spočítej, jak dlouho cesta potrvá, když hrdina ujde 90 kroků za minutu
  5. Vypiš vše f-stringy zaokrouhlené na 1 desetinné místo pomocí {hodnota:.1f}
Úroveň Co má zvládnout
Minimum Body 1–3
Rozšíření Body 4–5, zaokrouhlené výpisy
Výzva Rozdělit čas na celé minuty a sekundy pomocí // a %

Očekávaný výsledek:

1500 kroků = 1125.0 m = 1.1 km
Cesta potrvá 16.7 minut
cviceni/cviceni4_prevodnik.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Pro učitele — na co si dát pozor

Očekávaný výsledek: správný převod kroků na metry, kilometry a čas, ideálně s hezky zaokrouhleným výpisem.

Kde se zaseknou:

  • napíšou 0,75 místo 0.75
  • kilometry spočítají dělením 100 místo 1000
  • výsledek vypíšou bez f-stringu, takže zaokrouhlení na 1 desetinné místo neudělají
  • u výzvy si pletou // a %

Užitečná otázka: co je základní hodnota a co odvozená? Když to děti pojmenují, obvykle pak samy vědí, co se má počítat z čeho.

Řešení 4 — jedna z možných variant
reseni/reseni4_prevodnik.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Blok 15Cvičení 5 — PyQuest: statistiky hrdiny (25 min)3. Cvičení

Rozšiřuje app.py z minulé hodiny.

  1. Nad herní pole přidej proměnné: max_zivoty, zraneni, zlato, sila, uroven
  2. Spočítej zivoty = max_zivoty - zraneni
  3. Spočítej poskozeni = sila * uroven
  4. Přidej řádek se čtyřmi st.metric: životy, zlato, síla, úroveň
  5. Přidej st.progress(zivoty / max_zivoty) a pod herní pole vypiš f-stringem větu typu „Arkon má 62 ze 100 životů a útočí za 36."
Úroveň Co má zvládnout
Minimum Body 1–3
Rozšíření Body 4–5
Výzva Přidat nasobitel typu float a spočítat kritické poškození
cviceni/cviceni5_pyquest_statistiky.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Pro učitele — na co si dát pozor

Očekávaný výsledek: známé app.py z minulé hodiny dostane panel statistik, progress bar a větu složenou z proměnných.

Kde se zaseknou:

  • st.set_page_config(...) přesunou pod jiné příkazy Streamlitu a aplikace spadne
  • st.metric napíšou čtyřikrát pod sebe místo do sloupců
  • progress baru pošlou zivoty místo zivoty / max_zivoty
  • f-string větu napíšou bez f, takže se zobrazí {zivoty} doslova

Kdo je hotový dřív: ať přidá nasobitel = 1.5, spočítá kritický zásah nebo doplní slider pro pozici hrdiny z minulé hodiny a propojí ho se statistikami.

Řešení 5 — jedna z možných variant
reseni/reseni5_pyquest_statistiky.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.

4. Domácí úkol

Blok 16Domácí úkol na příští hodinu4. Domácí úkol

V app.py nahraď všechna napevno napsaná čísla proměnnými pojmenovanými nahoře v souboru. Pak zkus změnit jen jedno číslo (například uroven = 10) a ověř, že se přepočítá celá karta. Napiš do komentáře, co všechno se změnilo.

Zobrazit ukázkové řešení domácího úkolu

Toto je jedna z možných variant, jak mohl úkol dopadnout. Tvoje řešení se může lišit a to je v pořádku.

domaci/domaci_ukol02.py
Tady se objeví výsledekKlikni na Spustit. Kód vlevo můžeš měnit a spouštět opakovaně klávesami Ctrl+Enter.
Kód vlevo jde upravovat. Tab odsazuje o čtyři mezery.
Blok 17Oficiální dokumentace4. Domácí úkol

Oficiální dokumentace je místo, kam se vyplatí sáhnout, když si chceš ověřit, jak něco v Pythonu funguje, nebo najít další příklady. Je v angličtině, ale to je v programování běžné — klidně se orientuj hlavně podle názvů, krátkých ukázek kódu a příkladů.

Co jsme použili Oficiální dokumentace Co tam najdeš
proměnné a přiřazení = Assignment statements jak funguje ukládání hodnot do jmen
str str práci s textem a metody řetězců
int numeric types celá čísla a číselné operace
float numeric types desetinná čísla a jejich chování
bool bool hodnoty True, False a logiku
f-stringy f-strings vkládání hodnot a formátování textu
type() type zjištění typu hodnoty a varianty použití
int() int převod textu nebo čísla na integer
str() str převod hodnoty na text
float() float převod na desetinné číslo

5. Umíme informatiku

Blok 18Navazující cvičení na Umíme informatiku5. Umíme informatiku

Pro rychlejší studenty, kteří dokončí cvičení dřív, nebo na posledních 10–15 minut.

Cvičení Odkaz Proč se hodí
Programování v Pythonu umimeinformatiku.cz Přímo procvičuje proměnné a typy
Kódování a modelování umimeinformatiku.cz Reprezentace dat, čísla vs. text
Rozhodovačka umimeinformatiku.cz Rychlé ověření pochopení pojmů