Unplugged aktivity ve výuce informatiky
| Stránky: | Moodle ZČU |
| Kurz: | KVD/ITV Informační technologie ve výuce - šablona |
| Kniha: | Unplugged aktivity ve výuce informatiky |
| Vytiskl(a): | Nepřihlášený host |
| Datum: | čtvrtek, 22. října 2026, 09.30 |
1. Projekt Computer Science Unplugged
Anglický
pojem Computer Science Unplugged, který se pro tyto aktivity ustáleně používá, lze v českém prostředí nejvýstižněji přeložit jako „informatika bez počítače“ .
S pojmem CS Unplugged začal pracovat novozélandský profesor Tim Bell, působící na University of Canterbury. Je hlavním autorem projektu Computer Science Unplugged (https://csunplugged.org/en/) a problematice se věnuje již od 90. let minulého století. V roce 1998 publikoval Bell s dalšími spoluautory první knihu, v které je představeno dvacet offline aktivit, her a hádanek vhodných k vyučování informatiky bez použití počítačů pro děti všech věkových kategorií, ale určených především pro žáky na základní škole. Aktivity pokrývají široké spektrum témat od algoritmů po umělou inteligenci, od binárních čísel až po logické obvody, kompresi, kryptografii (šifrování) či reprezentaci dat. Tím, že se aktivity dělají bez počítače, jsou vhodné i pro ty, kteří počítačům neholdují. Tato kniha stála u zrodu velkého projektu CS Unplugged, který se od té doby rozšiřuje nejen v podobě nových aktivit, ale také se rozšiřuje po celém světě, kde dochází k jeho popularizaci a vzniku různých jazykových verzí. První verze knihy byly před lety kompletně publikovány také v češtině (dostupné např. zde). V našem prostředí může být aktuální zajímavostí i inspirace unplugged aktivitami z dílny Bella v nově vzniklé učebnici v rámci projektu PRIM Základy informatiky pro 1. stupeň ZŠ. Tu lze využít jako jednu z podpor pro výuku nově revidované vzdělávací oblasti informatika v RVP ZV.
Projekt CS Unplugged v aktuální podobě je kolekcí volně dostupných aktivit zaměřených na výuku informatiky bez použití digitálních technologií. Využívají se různé hry, hádanky, hlavolamy, skládačky, kartičky, provázky, pastelky a v neposlední řadě pohyb žáků při plnění těchto aktivit. Aktivity se snaží žáky naučit skutečné základy informatiky jako vědního oboru, spíše než jen ovládání různých aplikací. Informatické myšlení není dovednost řešit problémy nutně na počítači, ale využívat informatické myšlení k řešení reálných problémů tohoto světa (csunplugged.org, 2021).
Představené české unplugged aktivity, které jsou součástí dalších kapitol této knihy, vznikly jako součást bakalářské práce Unplugged aktivity v informatice na základní škole studenta Jana Rajtmajera na Katedře výpočetní a didaktické techniky. Originály těchto aktivit však pochází právě z projektu CS Unplugged.
Základní lekce s názvem „Jak binární čísla fungují“ představená v dalších kapitolách této knihy má v sobě několik různých aktivit na procvičení a mnoho metodických poznámek pro učitele. Tato lekce naplňuje výstup tematického celku v RVP s názvem „Data, informace a modelování“ o dovednosti žáka uvést příklady dat, která ho obklopují. V tomto tématu jsou mu data, se kterými pracují počítače, představena v podobě nul a jedniček. Z uvedené lekce se dozví např. to, že binární kód reprezentuje data jako jsou text, obrázek, video, zvuk atp. Učivo tohoto tematického celku se týká kódování a přenosu dat. Z představené lekce se žáci naučí, jakým způsobem lze zakódovat data a také to, že bity jako jednotky informace jsou přenášeny v počítačových obvodech například elektrickým napětím atp. Také se v této lekci žáci dozvědí, co je to algoritmus. Během aktivit využívají postup pro kódování čísla z desítkové soustavy do soustavy dvojkové. Objevení algoritmu je pak součástí tematického celku „Algoritmizace a programování“.
Všechny aktivity zveřejněné na webu csunplugged.org, jsou sdíleny pod licencí Creative Commons. Uveďte původ-Zachovejte licenci 4.0 Mezinárodní (CC BY-SA 4.0), která umožňuje plné využití tohoto obsahu včetně úprav a dalšího šíření, při uvedení autora a zachování licence. Oficiálními autory projektu CS Unplugged jsou University of Canterbury a Computer Science Education Research Group.
2. Úvod do tématu binárních čísel
Uvnitř počítačů jsou informace reprezentovány pomocí číslic (v angličtině je číslice digit), proto je nazýváme digitálními (číslicovými) systémy. Nejjednodušší a nejběžnější způsob v informatice jak reprezentovat čísla, je ve dvojkové (binární) soustavě pouze dvěma čísly. Těmi jsou 0 a 1. Tento zápis nazýváme dvojkovou (binární) soustavou, protože se v něm používají jen tato dvě odlišná čísla. Toto téma a jeho lekce nás naučí, jak dvojková soustava funguje, a jakým způsobem jsou data těmito dvěma čísly (0 a 1) reprezentována.
Základní jednotkou informace je jeden BIT (BInary digiT, z angličtiny je bit přeložen také jakou „drobek“ nebo „kousek“). Ten bývá uložen v paměťové buňce (tranzistoru) uvnitř počítače a přenáší se elektrickým obvodem pomocí elektrického napětí. To je buď nulové (0) nebo velmi nízké (1). V počítači, který běžně využíváme, je těchto bitů uloženo miliardy a jsou v nich uloženy informace, ze kterých se skládá text, čísla, obrázky, videa a všechno, co můžeme na disk uložit. V počítačových sítích (jako je třeba internet), jsou bity přenášeny světlem, napětím a nebo elektromagnetickým vlněním. Všechno, co může mít dvě různé hodnoty, může představovat bit!
2.1. Digitální technologie | Reprezentace dat
Binární soustava je velmi důležitá při ukládání dat v počítači. Abychom pochopili to, jak počítače data ukládají a následně nám je ukazují (jako například text, obrázek, video, zvuk atp.), musíme nejdříve pochopit jakým způsobem fungují binární čísla. Základní princip je jen změna hodnoty binárních čísel mezi zapnuto (1) a vypnuto (0). Počítače jsou vlastně docela jednoduché stroje. Potřebují od nás pouze přesné instrukce, aby mohly provádět složité operace a výpočty.
Výuka binárních čísel je vhodná jako úvod do informatického myšlení. Seznamuje studenty s algoritmy a rozkladem jednoho problému na dílčí. Učí se například rozepsat převod binárního čísla na číslo v desítkové soustavě do dílčích kroků. Binární čísla také ukazují abstrakci. Studenti se učí, že k reprezentaci jakékoli informace lze použít pouze dvě odlišné hodnoty (0 a 1). Binární čísla studentům ukazují jednoduchost počítače a metody, díky nimž počítače dělají téměř zázraky!
2.2. Slovník
Binární číslice: Každá nula nebo jednička se nazývá bit. Bit je zkratka pro Binary Digit.
Bajty (byte): 8 bitů seskupených dohromady se nazývá bajt a v nich také počítače ukládají data. Bajt je ideální počet bitů, protože do něj můžeme ukládat věci jako třeba jednoduché znaky, čísla a základní rozsah barev, i když obvykle se informace ukládají pomocí skupin bajtů.
Matematické okénko
Dvojková (binární) soustava je poziční číselná soustava se základem 2, takže jsou v ní využívána jen dvě čísla: 0 a 1.
Běžně používáme desítkovou soustavu, jejíž základ je 10, takže je v ní využívaných celkem 10 čísel: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
2.3. Použití v reálném životě
- Množství bitů (nebo také délka binárního kódu) použitých k reprezentaci znaků v textu (třeba písmen) je úměrný množství znaků, které dovedeme zakódovat. To znamená, že čím více bitů použijeme, tím více znaků můžeme zakódovat; krátký zápis binárního kódu je sice stručnější, ale za to neobsahuje znaky ze všech jazyků.
- Množství bitů použitých k reprezentaci barev v obrázcích ovlivňuje přesný odstín barvy a tedy kvalitu výsledného obrázku (použití pouze dvou barev znamená, že obrázek bude černobílý).
- Množství bitů použitých k ukládání zvukových stop ovlivňuje kvalitu zvuku.
- Při navrhování nové aplikace (třeba ukládání genetických dat nebo vzorků pachů) je třeba vybrat správný počet bitů pro uložení vzorku – dostatek bitů kvůli přesnosti, ale zase ne zbytečně moc.
- V šifrovacích a zabezpečovacích aplikacích platí, že čím více bitů je v bezpečnostním klíči, tím bezpečnější je.
- Pokud si koupíme novou elektroniku, jejím přeměřením v bitech se určí, kolik paměti zařízení má. Také kolik dat se dá uložit na externí disky.
- Práce pouze se dvěma čísly je jednoduchá pro obvody digitálních zařízení.
2.4. Souvislosti s informatickým myšlením
V průběhu následující lekce jsou zmínky o informatickém myšlení. Níže je uvedeno několik spojitostí, které se v této lekci objeví.
Využití CS Unplugged aktivit učí studenty informaticky myslet. Učí je definovat problém, který před nimi stojí, učí je tento problém popsat včetně jeho detailů, které jsou stěžejní. Učí je rozdělit problém na malé logické kroky tak, aby z nich mohli vytvořit postup, který povede k řešení problému. Tyto dovednosti jsou využitelné i v ostatních oblastech kurikula, ale obzvlášť důležité jsou v předmětu informatika.
Následující rozdělené části informatického myšlení jsou navzájem propojeny a navzájem se doplňují. Ale ne všechny části informatického myšlení se vyskytují v každé lekci. Zdůraznili jsme důležitá propojení částí informatického myšlení s následující lekcí. Budete vědět, na co se u žáků soustředit během jejich práce. Více informací o naší definici informatického myšlení naleznete na její samostatné webové stránce.
Algoritmické myšlení
V tomto tématu binárních čísel je využito několik algoritmů, které se studenti mají naučit použít. Tyto algoritmy jsou odpovědí na otázky „Jak převádíme čísla z desítkové do dvojkové soustavy?“, „Jak reprezentujeme písmena pomocí binárních čísel?“ a „Jak převádíme text zprávy napsaný v binárním kódu zpět na znaky písmen?“. Studenti budou mít za úkol prozkoumat a popsat tyto algoritmy.
Abstrakce
Zobrazení binárního čísla je abstrakce, která ukazuje složitost elektroniky a hardwaru uvnitř počítače. Abstrakce nám pomáhá věci zjednodušit. Můžeme ignorovat detaily, které znát nepotřebujeme.
Rozklad
Příkladem rozkladu problému na více menších je rozklad binárního čísla po jednom bitu při převodu. Otázka „Má to být 1 nebo 0“ pro každou z binárních kartiček v první lekci (Jak binární čísla fungují) rozkládají problém převodu čísla na dílčí části.
Zobecnění a vzorce
Rozpoznávání vzorů ve způsobu fungování binárních čísel nám pomáhá lépe porozumět použitým principům. Pomáhá nám zobecnit tyto principy a způsoby zápisů tak, abychom je mohli aplikovat na další podobné problémy.
Logika
Logické myšlení znamená použít pravidla, která již znáte, a logicky z nich odvodit další pravidla a informace. Jakmile víme, jaké číslo každá z binárních karet představuje, můžeme logicky odvodit, jak s kartami znázornit další čísla. Pokud si vzpomenete, jak znázornit číslo pomocí pěti bitů, dovedete hned znázornit jakékoliv jiné číslo s jiným počtem bitů? To asi ne tak úplně. Dovedete to ale, pokud pochopíte logiku toho, jak jsou čísla pomocí pěti bitů reprezentována.
Výstup
Příkladem výstupu je třeba zjištění, kolik různých hodnot může být reprezentováno určitým počtem bitů (např. 5 bitů může představovat 32 různých hodnot) a naopak (pro reprezentaci 1000 různých hodnot potřebujete alespoň 10 bitů).
3. Jak binární čísla fungují
Doba trvání lekce: 45 minut
Věková kategorie: 8 – 10 let
Výstupy lekce
Žáci budou schopni:
- Přičítat čísla k zadané sumě. (matematika)
- Vysvětlit jakým způsobem jsou pomocí 0 a 1 uložená data v počítači. (abstrakce)
- Vysvětlit, jak souvisí zvyšování celkové hodnoty binárního čísla s pozicí bitu v binárním čísle. (matematika)
- Vysvětlit, proč poslední bit znázorňuje jedničku a k čemu je to dobré. (logika)
- Vysvětlit jaké další věci, hodnoty nebo stavy můžeme použít k reprezentaci binárních čísel; nemusí to být jen čísla 0 a 1. (abstrakce)
- Jednoduše rozeznat sudá a lichá čísla a vysvětlit odlišnost posledního bitu. (matematika)
- Zdůvodnit proč v počítači nenajdeme napsaná čísla 0 a 1, ani když se podíváme zblízka. (abstrakce)
- Ukázat, jak funguje dvojková soustava a převést číslo z desítkové do dvojkové soustavy. (algoritmické myšlení)
- Jaké další číselné soustavy známe? (Odpovědí může být například: římské číslice, jedničková soustava (unární), dvojková, trojková, osmičková, šestnáctková atp.).
- Proč běžné používáme desítkovou soustavu? (Asi proto, protože máme deset prstů. Je v běžném životě zkrátka praktičtější).
- Proč máme tolik různých číselných soustav? (Každá je šikovná k něčemu jinému. Například jedničková číselná soustava se hodí, když se učíme počítat. Římské číslice zase vypadají záhadně a jsou to spíše takové šifry.)
3.1. Úvodní lekce
1. Mějte prvních pět binárních kartiček (ke stažení také ve spodní části této stránky) s puntíky (1, 2, 4, 8 a 16 puntíků) tak, aby je žáci neviděli. Vyberte pět dobrovolníků z řad žáků, kteří budou „bity“ a postavte je do řady před třídu.
2. Dejte binární kartičku s jedním puntíkem studentovi stojícím vpravo. Vysvětlete, že je jeden bit a může být buď zapnutý nebo vypnutý, černý nebo bílý, 0 nebo 1. To se rozezná tak, že buď jsou puntíky na binární kartě vidět nebo jsou otočeny k němu a vidět nejsou. Dalšímu dobrovolníkovi zprava dejte další kartičku (2 puntíky). Zopakujte, že buď je bit „zapnutý“ a puntíky jsou vidět, anebo je „vypnutý“ a binární kartička je otočena tak, že puntíky na ní vidět nejsou.
3. Zeptejte se ostatních žáků, kolik podle nich bude puntíků na další binární kartičce.
Poznámka z praxe
Žáci budou nejspíše hádat, že počet puntíků na další kartičce bude tři. Ti, kteří budou hádat čtyři, už nejspíš dělali předchozí aktivitu (nebo kartičku zrovna vidí, jak ji držíte). Pokud hádají špatné číslo, neopravujte je, ale pokračujte bez komentáře. To proto, aby si na pravidlo, jakým se zvyšuje počet puntíků na další kartičce, přišli sami.
4. Bez komentáře dejte třetí binární kartu dalšímu dobrovolníkovi a nechte jim chvilku, aby si sami našli to pravidlo (vzor).
Poznámka z praxe
Obvykle někteří studenti upozorní na to, že jste přeskočili kartičku se třemi puntíky. Jednoduše dejte najevo, že se žádná chyba nestala a že je to takto správně. To jim dodá jistotu, aby začali hledat algoritmus.
5. Zeptejte se, kolik je puntíků na další kartičce a proč.
Poznámka z praxe
V téhle chvíli je běžné, že žáci hádají 6 puntíků (šestka hned po dvojce a čtyřce). Ale když je chvilku necháte přemýšlet trochu víc, některé napadne 8 puntíků. Ti by měli být schopni vysvětlit ostatním, proč si to myslí (např. že počet puntíků dané kartičky je dvojnásobek počtu puntíků na té předchozí kartičce)
6. Studenti by měli být schopni dopředu určit počet puntíků i na páté (poslední) kartičce, a to bez pomoci od učitele.
7. Kolik puntíků by měla další kartička, kdybychom pokračovali dále? (32). A ta další…? (Pokud tyto kartičky nemáme, nemusíme je ukazovat. Pro ověření odpovědí studentů je ukázat můžeme, pokud je máme).
8. Pokračujte se 64 a 128 puntíky.
Poznámka z praxe
128 puntíků je na osmé kartičce. Těch osm kartiček se dohromady označuje jako jeden bajt (anglicky byte). Není potřeba to nutně zmínit, ale někteří studenti to už mohou vědět. My ale budeme v této lekci používat jen těch našich pět bitů, což je pro výuku dostačující. Bajt je vhodné seskupení bitů stejně jako vejce se mohou prodávat po tuctu. Bajt používáme například pro označování kapacity úložiště (megabajt, gigabajt,..).
Běžnou chybou je rozdávání karet z druhé strany – zleva doprava. Je ale důležité si dát pozor a karty rozdávat zprava doleva tak, jak tyto bity ve skutečnosti fungují.
Podklady obsahující binární kartičky naleznete také zde:
3.2. Aktivity na procvičení
1. Připomeňte studentům pravidlo, že buď je binární kartička s puntíky vidět (zapnuto) a s puntíky počítáme, nebo vidět není (vypnuto) a s puntíky na těchto kartičkách nepočítáme. Jak bychom tímto způsobem zobrazili dohromady přesně 9 puntíků? Začneme postupně zleva a nejdříve se jich zeptejte, jestli chtějí počítat s bodíky na kartičce, kde jich je 16. Měli by zpozorovat, že je tam puntíků příliš a že tuto kartičku chtějí schovat a s puntíky nepočítat. Potom se zeptejte na další kartičku s 8 puntíky, kterou by měli chtít využít, aby zadaných 9 puntíků „nasbírali“. Potom se zeptejte na zbylé kartičky se 4, 2 a 1 puntíkem. Stačí takovéto jednoduché zadání, aby studenti obvykle vymysleli následující správné řešení.
Matematické okénko
Desítková soustava, kterou běžně používáme, má 10 číslic: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Když počítáme v desítkové soustavě, počítáme od 0 do 9 a pak nám dojde číslice. Musíme tedy přidat další „řád“; vložíme do něj 1 a počítáme znovu od 0. Tak vznikne číslo 10 a potom tenhle proces opakujeme, dokud řád desítek nebude 9 a řád jednotek také 9 (takže 99). Potom přidáme další řád a to řád stovek. Z toho vyplývá námi využívaná poziční číselná soustava:
100 000 | 10 000 | 1 000 | 100 |10 | 1
Statisíce | desetitisíce | tisíce | stovky | desítky | jednotky
Poznámka: použijte jen řády, které děti znají z matematiky.
Dvojková soustava má stejnou logiku, ale rychleji se posouvá o řád výš, protože má pouze číslice 0 a 1. Hodnoty binárního čísla po řádech a jejich převedení do desítkové soustavy vypadá takto:
100000 | 10000 | 1000 | 100 | 10 | 1 |
32 | 16 | 8 | 4 | 2 | 1 |
Někdy studenti zaměňují pořadí číslic ve dvojkové soustavě. Vysvětlit jim to můžete na následujícím příkladu. Kdyby jim měl někdo dát 435kč, o číslo na které pozici by měli největší zájem? O číslo 4 v řádu stovek nebo o číslo 5 v řádu jednotek? Stejně tak je to u čísel ve dvojkové soustavě. Čísla vpravo mají řádově nižší hodnotu než čísla vlevo.
2. Potom se zeptejte: „Jak byste dali dohromady číslo 21?“ a opět se začněte ptát od kartičky s 16 puntíky, jestli ji budou chtít použít.
3. Tohle je algoritmus pro převod čísel do dvojkové soustavy. Pojďme ten algoritmus a jeho jednotlivé kroky dát společně dohromady. Jestli je číslo zapnuté nebo vypnuté nám znázorní svítící nebo zhasnutá žárovka u každého čísla.
A. Začnete se všemi binárními kartičkami „zapnutými“, kdy žáci vidí všechny puntíky.
B. Použijte například číslo 10.
C. Hodí se číslo 16 jako sčítanec do součtu 10, který hledáme? Nikoliv, tak ho vypneme jako žárovku a nebudeme s ním počítat.
D. Chtěli bychom číslo 8 jako sčítanec do hledaného čísla 10? Ano, proč ne. Tak ho necháme zapnutý. Kolik nám ještě zbývá do celkového součtu 10 puntíků?
E. Můžeme použít číslo 4 jako sčítanec pro námi hledaný zbytek 2? Ne, tak číslo 4 vypneme.
F. Hodí se číslo 2, když toto číslo hledáme? Ano. A jaký je zbytek, který bychom měli ještě hledat? Zbytek už žádný není.
G. Takže vypneme poslední číslo 1, které už nepotřebujeme.
3.3. Procvičování toho, co jsme se právě naučili
- Rozdělte studenty do dvojic.
- Každé dvojici rozdejte sadu zmenšených binárních kartiček (5 nebo 6 karet v závislosti na tom, jak velký rozsah čísel ovládají) z předchozí kapitoly.
- Nejdříve začněte s 5 kartami a nechte je procvičovat algoritmus (rozhodnout se o každé kartě zleva doprava) pro čísla 20, 15 a 8.
2. Nyní počítejme od nejmenšího čísla po nejvyšší.
- Jaké je to nejmenší číslo? Možná navrhnou číslo 1, ale měli by si hned uvědomit, že je to 0.
3. Vymyslete, jak pomocí kartiček představit číslo 0. (nejsou vidět žádné puntíky).
4. Nyní počítejte 1, 2, 3, 4,.. (Každá dvojice by měla znázornit tato čísla pomocí jejich malých binárních kartiček, které jim byly rozdány)
5. Po chvilce práce se jich zeptejte, jak často mají „zapnutou“ (otočenou puntíky nahoru) kartičku s jedním puntíkem. (Někteří si asi všimli, že každé druhé číslo, pokud je znázorňují popořadě). A. Jaké další vzory žáci vidí během znázorňování po sobě jdoucích čísel? (Například že karta s dvěma puntíky se otáčí po dvou znázorněných číslech, karta se čtyřmi puntíky se otočí po čtyřech znázorňovaných číslech, atp..).
6. Pokračujte, dokud všechny kartičky nejsou zapnuté a neudávají v desítkové soustavě součet 31. Co se stane dál? (Musíme přidat další kartu). Kolik na ní bude puntíků? (32). Co musíme udělat s dalšími pěti kartami, když máme znázornit číslo 32? (Všechny je musíme „vypnout“).
7. Pojďme to shrnout:
- Když mám dva bity (dvě kartičky), jaké nejvyšší číslo mohu znázornit? (3)
- Přidám další bit a kolik na něm bude puntíků? (4)
- Vypnu předchozí dva bity, abych znázornil číslo 4, je to tak správně? (ano)
- Teď všechny tři bity zapnu a kolik máme dohromady puntíků? (7)
- Přidám další bit a kolik je na něm puntíků? (8)
- Opakujte, dokud tento vzor studenti nedefinují. (Že na další přidané kartičce je o jeden puntík více než na všech předchozích kartičkách dohromady. Například že máme celkem 15 puntíků na prvních čtyřech bitech – 8, 4, 2 a 1 puntík – takže na dalším bitu bude 16 puntíků.)
- Kolik různých čísel můžeme udělat se dvěma bity? (4, žáci ovšem často říkají 3, protože zapomenou na 0)
- Přidejte další bit, kolik různých čísel můžeme udělat teď? (8)
- Opakujte, dokud studenti nerozpoznají vzor. Pokaždé, když přidáme další bit, můžeme znázornit dvakrát tolik čísel než předtím.
Poznámka z praxe
Koncept, který mohou studenti zpozorovat, spočívá v tom, že počet číselných kombinací je o je 1 vyšší než součet puntíků na všech kartičkách. Například že na třech zapnutých kartičkách se součtem puntíků 7 je 8 možných číselných kombinací (včetně 0). Stejně tak je to i u desetinných čísel. Nejvyšší číslice v desítkové soustavě je sice 9, ale celkem představují 10 čísel (0 je také číslo). V angličtině se tomuhle říká jev planěk v plotě. Protože mezer mezi plaňkami je o jednu méně, než je počet samotných planěk.
3.4. Ohlédnutí za lekcí
- Jak by se asi pracovalo s binárními kartičkami, kdyby byly bílé a puntíky na nich třeba béžové? V zásadě by to šlo, ale nebyl by to dobrý nápad. Nejsou to navzájem kontrastní barvy, a proto by bylo obtížné zjistit, jestli jsou bity vypnuté, nebo zapnuté, když by na kartičkách byly puntíky špatně vidět. To je důvod, proč počítač používá jednoduše rozlišitelné fyzikální veličiny.
- Jaké můžeme používat symboly, které mohou představovat zapnutý nebo vypnutý bit? Nebo jakým ještě jiným způsobem můžeme tento bit znázorňovat pomocí kartiček?
- Počítače jsou čím dál tím levnější a dostupnější a jejich sestavení je snazší, protože představují data pouze dvěma protikladnými hodnotami (0 a 1). Jak jinak bychom mohli zapisovat dvě protichůdné hodnoty? (možná křížek a fajfka, usměvavý a smutný smajlík nebo jakoukoliv jinou dvojici odlišných symbolů).
- Při zamyšlení dojdeme k tomu, že bity mohou být v počítači reprezentovány napětím. To je buď 5V nebo 0V. Obvody v počítači jsou stavěné tak, že napětí menší než asi 2,5V se počítá jako 0 a napětí větší než 2,5V se počítá jako 1. Stejně jako kontrast bílé barvy binárních kartiček a černých puntíků na nich, je to velmi snadno rozlišitelné. Mohli bychom mít deset různých barev, které nám budou reprezentovat čísla od 0 do 10. Stejně tak bychom mohli mít deset různých napěťových rozsahů. Bylo by ale mnohem složitější vytvořit počítačové obvody, které by fungovaly takto.
- Nápady mohou být například držení karet nahoře nebo dole; posadit se nebo vstát; zvednout ruku nebo ji nechat dole a nebo znázorňovat zapnutý bit rozsvíceným světlem a vypnutý bit zhasnutým světlem.
3.5. Souvislosti s informatickým myšlením
V průběhu lekce jsou použity postupy a myšlenky, které souvisí s informatickým myšlením. Níže jsou shrnuty do jednotlivých oblastí informatického myšlení.
Učit studenty myslet informaticky pomocí aktivit z CS Unplugged jim pomáhá naučit se popsat problém, najít v něm co je důležité a rozdělit ho na menší části a do logických kroků. Po té z těchto jednotlivých kroků sestrojit celistvý postup, který problém vyřeší. Tyhle dovednosti je možné uplatnit i v jiných vzdělávacích oblastech. Jsou ale důležité pro pochopení digitálních systémů a řešení problémů pomocí počítačů.
Všechny následující aspekty informatického myšlení jsou navzájem propojené a doplňují se. Je dobré zmínit, že nejsou v každé lekci použity všechny najednou. Pro více informací o definici informatického myšlení se podívejte např. na stránku imysleni.cz, případně také na anglickou definici přímo na webu CS Unplugged.
Algoritmické myšlení
V této lekci jsme použili algoritmus na převod čísla z desítkové soustavy do dvojkové. Je to jasný postup krok za krokem. Když se podle něj postupuje správně, bude mít vždy správný výsledek pro jakékoliv vstupní číslo.
Zde je tento algoritmus zapsaný v bodech:
- Zjistěte číslo (počet puntíků), které se má znázornit. Budeme tento počet označovat jako počet zbývajících puntíků. To je na začátku zadaný počet puntíků.
- Projděte binární kartičky postupně zleva doprava (tzn. 16, 8, 4, 2, 1):
- V opačném případě:
- Pokud je počet puntíků na binární kartičce větší než počet zbývajících puntíků:
- Skrýt (vypnout) kartu.
- Ukázat (zapnout) kartu.
- Odečtěte počet puntíků na kartě od počtu zbývajících puntíků.
Všimněte si, že tento algoritmus probíhající zleva doprava funguje dobře, ale pokud byste se koukli na některé počítačové programy, tak ty mohou pracovat i obráceně. Obvykle existuje více algoritmů na vyřešení stejného úkolu.
Čeho si ještě můžete všimnout
Kdo ze studentů postupuje správně popořadě při převádění čísla z desítkové soustavy do dvojkové? Kdo začíná binární kartičkou nejvíce vlevo a jde postupně po jedné kartě doprava, než aby si náhodně vybíral karty, ty obracel a čekal, až dostane správný výsledek?
Abstrakce
Reprezentace čísel ve dvojkové soustavě je abstrakce, která ukazuje složitost elektroniky a hardwaru uvnitř počítače, kam se ukládají data. Abstrakce nám pomáhá věci zjednodušit, protože můžeme ignorovat detaily, které zrovna nepotřebujeme znát.
V tomto případě můžeme ignorovat podrobnosti o tom, jak počítače používají k ukládání a přesunu dat fyzické součástky, obvody, napětí v obvodech a s tím spojených mnoho složitých fyzikálních jevů a matematických teorií, díky nimž to funguje.
Nepotřebujeme přesně vědět, jak logické obvody v počítači fungují a jak pracují s dvojkovou soustavou. Používání čísel ve dvojkové soustavě je abstrakce logických obvodů. Ta nám ukazuje, jak převádět čísla z desítkové soustavy do dvojkové (do bitů), abychom pochopili jednotku informace. Nemusíme se zabývat zbytečně tím, co se děje uvnitř počítače a v jeho obvodech.
Další použití abstrakce v této lekci je například zamyšlení se nad tím, čím vším může být znázorněno binární číslo (číslo ve dvojkové soustavě). Odpověď je, že cokoliv, co má dvě hodnoty. Dvě barvy, dvě různá zvířata, dva různé symboly atd. Pokud jsou tyto hodnoty dvě a jsou odlišné, mohou být použity k reprezentaci libovolného čísla pomocí binárního kódu (dvojkového zápisu toho čísla) stejně tak, jako počítač reprezentuje data elektrickým napětím.
Čísla ve dvojkové soustavě můžeme použít pro znázornění a uložení jakéhokoliv typu dat v počítači. Pokud jimi znázorňujeme například písmena, obrázky nebo zvuk, tak také používáme abstrakci. Nekoukáme se na detail všech binárních čísel. Koukáme se na to jako na celek, balík dat. Všechny formy dat jsou nakonec reprezentovány jako čísla (takže různé kombinace bitu – 0 a 1). Pro text máme číslo pro každé písmeno, pro obrázek máme číslo pro každou barvu, ze které se obrázek skládá a tak dále. Používáme různé úrovně abstrakce. Například všeobecně používaná abstrakce je ta, že měsícům v roce jsme přiřadili čísla. Takže třeba říjen může být reprezentován číslem deset, což je ve dvojkové soustavě 01010. Pokud je to uložené v paměti počítače, jsou bity znázorněny „nízkým, vysokým, nízkým, vysokým, nízkým“ napětím.
Čeho si ještě můžete všimnout
Koho ze studentů napadlo znázornit binární čísla ještě jinak než 1 a 0, černou a bílou, zapnuto a vypnuto, symboly smajlíků 12 a 1, stojícími a sedícími lidmi? Pokud chápou černou a bílou jako 1 a 0, procvičují abstrakci.
Rozklad
Příkladem rozkladu v této lekci může být převádění čísla z desítkové do dvojkové soustavy po jednom bitu. Otázka „Měl by být tento bit zapnutý“ pro každou binární kartičku zvlášť, je rozklad problematiky převodu čísla do dílčích otázek.
Čeho si ještě můžete všimnout
Kdo ze studentů přišel na to, že je důležitě začít s binární kartičkou úplně vlevo a procházet kartičky postupně jednu po druhé? Kdo se zaměřoval na kartičky postupně než aby chtěl otočit všechny najednou?
Zobecnění a vzorce
Rozpoznávat vzory ve způsobu fungování dvojkové soustavy nám pomáhá lépe porozumět používaným mechanismům. Pomáhá nám to také zobecňovat tyto mechanismy do vzorů (předpisů) tak, abychom je mohli použít i na jiné podobné úkoly.
Jednoduchý vzor na začátku, kteří studenti objeví, začíná u čísel 1, 2 a 4. Studenti si uvědomí, že se předchozí hodnota vždy zdvojnásobí. Ve cvičení se používá jen pět binárních kartiček, ale studenti by měli být schopni vymyslet počty puntíků třeba až na 8 kartiček.
Algoritmus pro převod čísla z desítkové do dvojkové soustavy je založen na vzorci, který může být zobecněn třeba pro použití vrácení hotovosti při placení. Ve dvojkové soustavě začínáme s kartičkou s nejvyšší hodnotou a ptáme se, jestli jí potřebujeme nebo nikoliv. Stejně tak když nám paní prodavačka v obchodě vrací peníze, začíná nejdříve od těch s nejvyšší hodnotou a následně dopočítává mince, pokud jsou potřeba. Poznámka ze žargonu: Tomu se v angličtině říká „chamtivý algoritmus“ – pokaždé si vezme přesně tolik, kolik může.
Matematické okénko
Zeptejte se studentů, co je podle nich zajímavé na převodu čísla z desítkové do dvojkové soustavy vzhledem k nějakému obecnému algoritmu. Ať se zamyslí nad tím, že v reálném životě je potřeba více mincí stejné hodnoty, zatímco ve dvojkové soustavě stačí jedna (nebo žádná) od každé hodnoty.
Algoritmus otáčení
Při postupném přepočítávání čísel do dvojkové soustavy od nejnižších po nejvyšší jsme si mohli všimnout vzoru, jak často se konkrétní karty otáčí. Binární kartička s jedním puntíkem se otočí na každé druhé číslo. Druhý bit (kartička se dvěma puntíky) se otočí po každých dvou číslech. Třetí bit (kartička se čtyřmi puntíky) se otočí po čtyřech sestavených číslech. Existuje snad tomuto podobný vzorec, když počítáme v desítkové soustavě?
Pokud máte pět binárních kartiček, které jsou zapnuté, dají dohromady číslo 31, což je o jedna menší hodnota, než má následující karta (32). Je toto pravidlo platné pokaždé?
Množství čísel, která můžeme reprezentovat určitým počtem bitů (kartiček) je stejný jako hodnota následujícího bitu. Například pokud máme 4 binární kartičky (1, 2, 4, 8), můžeme s jejich pomocí prezentovat 16 různých čísel (0-15) a hodnota další binární kartičky je 16. Pokaždé, když přidáme další kartičku, zdvojnásobíme množství čísel, která můžeme reprezentovat.
Práce s těmito vzory je důležitá pro pochopení vztahu mezi počtem použitých bitů a tím, co všechno mohou prezentovat.
Vysvětlete jeden nebo více z následujících vzorců:
- Že konkrétní počet binárních kartiček může znázornit stejný počet čísel, jako by byla hodnota následující kartičky přidané vlevo (nezapomeňte, že 0 je taky číslo, které se dá pomocí binárních kartiček zobrazit).
- Pokud převádíme čísla vzestupně do dvojkové soustavy, první kartička s jedním puntíkem se otočí po každém čísle, druhá kartička se dvěma puntíky se přetáčí po každých dvou číslech, třetí kartička se čtyřmi puntíky se otáčí po každých čtyřech číslech a kartička s osmi puntíky po každých osmi převedených číslech…
- Pokud máme všechny binární kartičky viditelně otočené, hodnota následující kartičky bude rovna součtu puntíků na všech současných kartičkách plus 1.
Čeho si ještě můžete všimnout
Kteří studenti rychle přijdou na to, že každá kartička má dvojnásobný počet puntíků než ta předchozí? Najdou studenti podobnosti mezi tímto a dvojnásobným zvyšováním hodnoty a násobením čísla 10 v desítkové soustavě?
Kteří studenti lehce pochopí vzor otáčení binárních kartiček při přepočítávání čísel z desítkové do dvojkové soustavy?
Logika
Logické myšlení znamená umět odvodit nové principy a informace z těch, které již známe. Pokud víme, jak se číslo znázorňuje pomocí binárních kartiček, můžeme z toho odvodit, jak reprezentovat další čísla. Pokud vymyslíte, jaká čísla se dají znázornit pomocí pěti binárních kartiček, znamená to automaticky, že umíte znázornit jakékoliv jiné číslo určitým počtem bitů? Ne úplně přesně. Budete ale vědět jak na to, když pochopíte logiku, jakou jsou čísla pomocí těch pěti karet znázorněna.
Příkladem logického myšlení v systému binárních čísel může být například vysvětlení, proč každý bit musí mít konkrétní hodnotu (buď 0 nebo 1), aby dohromady reprezentovaly zadané číslo. Z toho můžeme vyvodit, že každé číslo z desítkové soustavy může být znázorněno jen jednou správnou posloupností bitů.
Čeho si ještě můžete všimnout
Dokážou studenti vysvětlit, proč poslední bit úplně vpravo prezentuje zrovna číslo 1? To protože je to jediné liché číslo a proto ho potřebujeme. Abychom mohli ve dvojkové soustavě prezentovat i lichá čísla. Bez něj bychom dokázali prezentovat jen ta sudá.
Dokážou studenti vysvětlit, proč musí být každá karta otočená viditelně, pokud se z ní požadované číslo skládá? Například kartička se 16 puntíky je potřeba pro složení čísla 19, protože bez téhle kartičky dokážeme dát dohromady jen 15 puntíků a to nestačí. Naopak kartička se 16 puntíky není potřeba pro skládání čísla 9, protože by bylo puntíků moc.
Výstup
Příkladem výstupu může být zjištění, kolik různých hodnot dokážeme reprezentovat daným počtem bitů. Například že z 5 bitů můžeme prezentovat 32 různých čísel a naopak, že pro prezentaci 1000 různých čísel potřebujeme alespoň 10 bitů.
Čeho si ještě můžete všimnout
Dokážou studenti pracovat i s více než čtyřmi bity? (16)
6 bity? (64)
8 bity? (256)
Pokud přidáme další bit, jak se zvětší množství čísel, které můžeme reprezentovat? (Zdvojnásobí se)
Pokud přidáme další dva bity, jak se zvětší množství čísel, které můžeme reprezentovat? (Je to čtyřikrát tolik)
Kolik potřebujeme bitů na reprezentování 1000 různých čísel?