5. diel - Načítanie hodnôt od užívateľa v Scratchi
V predchádzajúcom cvičení, Riešené úlohy k 3.-4. lekciu Scratche, sme si precvičili získané skúsenosti z predchádzajúcich lekcií.
V dnešnom Scratch tutoriále sa naučíme načítať užívateľské vstupy. Vytvoríme dva jednoduché programy, v ktorých používateľa vyzveme, aby zadal nejaký text alebo číselnú hodnotu. Získanú odpoveď potom v našich programoch spracujeme. Budeme tak môcť vytvárať zaujímavejšie interaktívne aplikácie.
Program Papagáj
Skúsme do programu zapojiť používateľov a nejako reagovať na jeho
vstup. Napíšeme program, ktorý bude dvakrát opakovať to, čo používateľ
napísal. Otvoríme si nový projekt a náš budúci program pomenujeme
Papousek
.
Zmena postavy
Pretože budeme robiť program s papagájom, môžeme na chvíľu opustiť mačičiaka. Mačičiaci totiž veľmi často neopakujú, čo im ľudia povie, kým pre papagája je to väčšinou veľká zábava 🙂
Aby sme namiesto mačičiaka mali v programe postavu papagája, prejdeme do záložky Kostýmy:
![Kliknutie na záložku kostýmy - Scratch](images/17303/64e5cfc9a4c09.png)
Kliknite na hlavu vľavo dole s popisom Vyber kostým:
![Kliknutie na „Vyber kostým“ - Scratch](images/17303/64e5d02b0bc63.png)
Do políčka
Hľadať napíšeme parrot
, tak sa povie anglicky
papagáj. Hneď nato sa nám objavia obrázky dvoch papagájov, ktoré už za
nás vytvorili tvorcovia:
![Vyhľadávanie papagája - Scratch](images/17303/scratch/o20.png)
Na jedného z nich klikneme az nášho mačičiaka je razom papagáj 😉:
![Kostým papagája - Scratch](images/17303/scratch/o21.png)
Papagáj je teraz pripravený, tak ho poďme oživiť 🙂
Nemusíme vyberať iba z už vytvorených postáv a vecí, ale môžeme si vytvoriť aj vlastné. O tom ale dnešná lekcia nie je 😉
Načítanie textu od užívateľa
Teraz sa vrátime na záložku Scenáre:
![Záložka scenára - Scratch](images/17303/64e5d2d6f059e.png)
Žiadny text sme ešte od používateľa načítať neskúšali. Slúži na to blok otázka z kategórie Vnímanie. Tento blok umožní užívateľovi zadať riadok textu, s ktorým potom môžeme rôzne pracovať v našom programe.
Aby sme mohli od užívateľa načítať odpovede, začneme klasicky tým, že z blokov Udalosti presunieme blok po kliknutí na (vlajočka):
![Pridanie bloku po kliknutí na vlajočka - Scratch](images/17303/64e5dc1d31d71.png)
Potom prejdeme do blokov Vnímania a prilepíme blok otázka:
![Pridanie bloku otázka - Scratch](images/17303/64e5dce54e6f1.png)
Zmeníme text
Jak se jmenuješ?
na
Ahoj, jsem virtuální papoušek Lóra, rád opakuji! Napiš něco:
![Otázka s oznámením od papagája - Scratch](images/17303/scratch/scratch_papousek_7.png)
To, čo používateľ napíše, sa uloží do bloku odpoveď, ktorý je tiež v kategórii Vnímanie.
Teraz ale musíme papagája prinútiť hovoriť. Prejdeme teda do blokov Vzhľad a prilepíme pod blok otázka ďalší blok bublina:
![Blok bublina pri papagáji - Scratch](images/17303/64e5e0061b6fc.png)
Potom prejdeme znova do blokov Vnímanie a blok odpoveď presunieme do bloku bublina. Urobíme to rovnako, ako keď sme vypisovali premennú:
![Blok odpoveď v bubline - Scratch](images/17303/64e5e0a96f502.png)
Keď teraz program spustíme, papagáj zopakuje to, čo mu napíšeme:
![Papagáj opakuje vstup - Scratch](images/17303/scratch/o27.gif)
A pretože náš papagáj naozaj veľmi rád opakuje, poďme zariadiť, aby všetko opakoval dvakrát 🙂
Prejdeme do blokov Operátory a pretiahneme si do vedľajšieho okna blok spoj:
![Pridanie bloku „spoj“ do projektu - Scratch](images/17303/64e5e19664860.png)
Blok spoj nám
umožní spojiť dva texty do jedného. My nebudeme spájať slová
jablko
a banán
, obe si teda prepíšeme. Pretože
budeme chcieť, aby papagáj opakoval vstup používateľa dvakrát po sebe,
využijeme opäť blok odpoveď.
Medzi vstupmi však budeme chcieť ešte pridať bodku a na koniec výkričník. Ako to urobiť, keď môžeme spojiť iba dva bloky? Pospájame viac blokov do seba 😉
Pretiahneme si do okna ešte ďalšie dva bloky spoj:
![Tri bloky „spoj“ v projekte - Scratch](images/17303/64e5e3e8149e7.png)
Prejdeme do blokov Vnímanie a presunieme do dvoch nových blokov spoj na prvej pozícii blok odpoveď:
![Pridanie odpovede do dvoch blokov „spoj“ - Scratch](images/17303/64e5e4b5c87e8.png)
Do ďalšieho políčka prvého bloku spoj s odpoveďou napíšeme bodku, do druhého bloku doplníme výkričník:
![Čiarka a výkričník v blokoch „spoj“ - Scratch](images/17303/scratch/o31.png)
A tieto dva bloky potom spojíme do jedného bloku spoj, ktorý sme si pripravili na začiatku:
![Spojenie blokov „spoj“ - Scratch](images/17303/scratch/o32.png)
Teraz celý blok spoj presunieme do bloku bublina:
![Veľký blok spoj v bloku bublina - Scratch](images/17303/scratch/o33.png)
Keď teraz program pustíme, papagáj nám vstup zopakuje dvakrát, a pretože naozaj rád opakuje nahlas, pridá na koniec aj výkričník:
![Papagáj opakuje dvakrát - Scratch](images/17303/scratch/o34.gif)
Program Zdvojnásobovač
Poďme si ešte vytvoriť program, ktorý si vyžiada na vstupe od používateľa číslo. To potom zdvojnásobí a vypíše.
Začneme klasicky vytvorením nového projektu. Z kostýmov si tentokrát vyberieme jedného z robotov:
![Kostým retro robota namiesto mačičiaka - Scratch](images/17303/64e5eada1bb9a.png)
Potom sa prepneme späť do scenárov az blokov Udalosti opäť vyberieme blok po kliknutí na (vlajočka):
![Pridanie bloku po kliknutí na vlajočka - Scratch](images/17303/64e5dc1d31d71.png)
Z blokov Vnímanie k nemu potom prilepíme blok otázka a
prepíšeme text Jak se jmenuješ?
na
Zadej číslo k zdvojnásobení
:
![Blok otázka na zdvojenie čísel - Scratch](images/17303/64e5e7e20bbba.png)
Prejdeme do blokov Operátory a presunieme blok krát do nášho okna:
![Blok krát v okne - Scratch](images/17303/64e5e88a6503b.png)
Do jedného z políčok pri
bloku krát presunieme z blokov Vnímanie blok
odpoveď a do druhého políčka napíšeme číslo 2
:
![Blok odpoveď krát 2 v bloku krát - Scratch](images/17303/64e5e944f2570.png)
Z blokov Vzhľad pridáme blok bublina a do nej vložíme celý blok krát:
![Blok krát v bloku bublina - Scratch](images/17303/64e5ea231fca1.png)
Keď teraz program spustíme, robot nám vypočíta dvojnásobok zadaného čísla:
![Robot dvojnásobí číslo - Scratch](images/17303/64e5f7ecf0eae.gif)
V budúcej lekcii, Jednoduchá kalkulačka v Scratchi , využijeme znalosti z predchádzajúcich lekcií a naučíme mačičiaka počítať. Ďalej si ukážeme chyby, ktorých sa pri tvorbe jednoduchej kalkulačky vyvarovať.