4. diel - Premenné v Scratchi
V predchádzajúcej lekcii, Prvý program v Scratchi , sme vytvorili svoju prvú aplikáciu v Scratchi a postupne ju vylepšovali a upravovali.
V dnešnom Scratch tutoriále sa pozrieme na tzv. typový systém, ukážeme si základné dátové typy a prácu s premennými. Nakoniec si vytvoríme jednoduchý program, ktorý nám povie hodnotu premennej.
Premenné
Poďme si najskôr povedať, čo je to premenná. Možno poznáte z
matematiky premennú (napr. a
), do ktorej môžeme uložiť nejakú
hodnotu. Napríklad trojuholník môže mať stranu a
dlhú 7 cm.
Do premennej a
by sme teda uložili hodnotu 7
. Vo
svete počítačov je premenná to isté 🙂 Je to miesto niekde v
pamäti počítača, kam si môžeme uložiť nejaké
dáta.
Premenná má vždy nejaký dátový typ. Môže to byť číslo, znak, text a podobne. Záleží na tom, na čo ju potom chceme používať. Pred jej použitím musíme premennú najskôr deklarovať. To znamená, že musíme programovaciemu jazyku povedať, ako sa bude volať.
V niektorých zložitejších programovacích jazykoch musíme aj napísať, akého bude dátového typu a ten potom nemôžeme meniť. Pokiaľ teda povieme, že premenná bude obsahovať číslo a pokúsime sa do nej uložiť text, takýto program vyhodí chybu.
Jazyk najskôr premennú vytvorí v pamäti počítača a až potom s ňou môžeme pracovať. Podľa dátového typu jazyk spozná, koľko v pamäti zaberá miesta a ako s týmto kusom pamäte pracovať. Potom sám určí, ako ju má čítať, upravovať a vytvoriť.
Typový systém
Existujú dva základné typové systémy - statický a dynamický.
Dynamický typový systém
Pokiaľ používame dynamický dátový systém, nemusíme dátový typ premennej určovať. Vlastne to skoro vyzerá, že žiadny nemá. Ona ho samozrejme vnútorne má, ale jazyk to nedáva najavo 😉 Do tej istej premennej môžeme ukladať text a potom desatinné číslo. Jazyk sa s tým sám pobije a vnútorne automaticky dátový typ mení. Scratch používa práve dynamický dátový systém, čo nám uľahčí prácu.
Medzi zložitejšie jazyky s dynamickým typovým systémom patria napr. PHP alebo Ruby.
Statický typový systém
Statický typový systém naopak striktne vyžaduje definovať typ premennej a tento typ je ďalej nemenný. Akonáhle premennú raz deklarujeme, nie je možné jej dátový typ zmeniť. Akonáhle sa do textového reťazca pokúsime uložiť číslo, dostaneme vynadané.
Medzi také jazyky patrí napríklad Java alebo C#.
Program vypisujúci premennú
Aby sme nezostali len pri teórii, poďme si teraz všetko vyskúšať priamo vo vývojovom prostredí Scratche. Vytvoríme si jednoduchý program na prácu s premennými.
Založíme si teda nový projekt a pomenujeme ho Vypis
.
Aj ku všetkým ďalším príkladom si vždy založíme nový projekt, ktorý zakaždým na konci uložíme k predchádzajúcim projektom.
Opäť si v ňom najskôr z bloku Udalosti pridáme blok po kliknutí na (vlajočka):
Deklarácia premennej
Ďalej si vytvoríme premennú, do ktorej môžeme niečo uložiť. Prejdeme do blokov Premenné a klikneme na Vytvor premennú:
Premennú si pomenujeme a
. Môžeme nechať zvolenú možnosť
Pre všetky postavy a potvrdíme tlačidlom OK:
Vidíme, že sa nám vytvorila nová premenná a
, ktorá má
vedľa seba zaškrtnutú modrú fajvku. To znamená, že hodnota, ktorú do nej
uložíme sa zobrazí vo výstupnom okne. Pokiaľ ju tam nechceme, môžete
fajku odškrtnúť. Na hodnotu uloženú v premennej to nemá vplyv:
- .<>
- .<>
Inicializácia premennej znamená, že do nej niečo uložíme. Poďme teda
do našej premennej uložiť napríklad číslo 56
🙂
Z blokov Premenné vyberieme blok nastav a na ... a prilepíme ho za náš štartový blok:
Namiesto 0
potom napíšeme číslo 56
:
Výpis premennej
Výpis už vieme. Prejdeme do blokov Vzhľad a prilepíme za náš kód blok bublina:
Teraz prejdeme znova do blokov Premennej a blok s premennou a presunieme do bloku bublina v našom kóde:
Keď teraz program spustíme, náš mačičák nám povie číslo, ktoré sme
si uložili do premennej a
:
Možno si teraz hovoríte, na čo je to všetko dobré? Číslo
56
sme predsa mohli napísať mačičákovi priamo do bubliny a
výstup by bol rovnaký. Áno, v takto jednoduchom príklade by sme sa bez
premennej zaobišli. V ďalších lekciách av zložitejších aplikáciách
však budeme premenné často využívať. Ukážeme si napríklad, ako do nich
uložiť čísla zadané užívateľom a ako ich sčítať alebo
vynásobiť.
Vďaka premenným môžeme ľahko a efektívne riešiť rôzne úlohy, ako je počítanie, ukladanie informácií alebo manipulácia s textom. Premenné nám pomáhajú vytvoriť múdrejšie programy a umožňujú nám pracovať s informáciami tak, ako potrebujeme.
V budúcej lekcii, Načítanie hodnôt od užívateľa v Scratchi , sa pozrieme na načítanie hodnôt zadaných užívateľom a vytvoríme dva jednoduché programy, v ktorých papagáj zopakuje prijatý text a robot vypočíta dvojnásobok zadaného čísla.