x
Učitavanje

2.4 Primjena programiranja

Što ću naučiti?
Europska unija - Zajedno do fondova EU
Prethodna jedinica Sljedeća jedinica
Sadržaj jedinice icon sadržaj jedinice

Na početku...

Računala su svuda oko nas, a znamo da su za programe na računalima zaslužni programeri. Računala možemo koristiti na mnogo načina. Ako smo dovoljno kreativni, možemo postati i inovatori, primjenjujući računalo na način kojeg smo se dosjetili upravo mi. Pogledajmo koja sve računala okružuju Anitu.

Programiranje oko nas

micro:bit

Jedna od mogućnosti primjene programiranja jest micro:bit.

Što je micro:bit, pogledajte na poveznici crowd funding kampanje za micro:bit u hrvatskim učionicama.

Micro:bit
Micro:bit s prednje i stražnje strane.

Kutak za znatiželjne

Kao što vidimo na prethodnoj slici, micro:bit je uređaj veličine kreditne kartice. U sebi sadrži akcelerometar, kompas i termometar. Možemo mu pristupiti s pomoću USB-a i Bluetootha. Sadrži minizaslon s dvadeset i pet led dioda, dva programabilna gumba i pet prstenastih priključaka.

Micro:bit možemo programirati tako da reagira na pritiske gumba, a uz pomoć senzora može reagirati i na temperaturu (termometar), svjetlost, trešnju (akcelerometar), stranu svijeta (kompas) ili naginjanje. Micro:bit možete posuditi u vama najbližoj knjižnici.

Dva su programa u kojima možemo programirati micro:bit:

  • MakeCode Editor – vrlo jednostavan vizualni blok editor koji koristi JavaScript
  • Python Editor – za one željne izazova.

Blockly

Prije nego što krenemo rješavati konkretne zadatke za micro:bit u MakeCode editoru, pobliže ćemo objasniti vrlo sličan alat Blockly , koji je nastao u suradnji Googlea i jednog od najpoznatijih tehničkih učilišta na svijetu Massachusetts Institute of Technology (MIT).

Blockly, kao što ime sugerira, temelji se na slaganju blokova naredbi. Blokove slažemo metodom drag and drop, a program pokrećemo pritiskom na gumb.

Upoznajmo Blockly na nekoliko primjera:

Isprobaj sve računske operacije unoseći različite brojeve!

Pomoć:

Prenesi naredbu za ispis (print) u dio prozora za slaganje blokova naredbi.

Prenesi naredbu za osnovne računske operacije u dio prozora za slaganje blokova naredbi.

Spoji ove dvije naredbe poput slagalice.

Pokreni program uz odabir različitih operatora i unos različitih vrijednosti operanada.

null
Primjer rješenja Blockly zadatka
Primjer rješenja Blockly zadatka.

Blockly u svojoj biblioteci alata (toolbox) ima još mnogo blokova raznih namjena, a mi ćemo se koristiti onima koji nam u tom trenutku budu najprikladniji.

Riješimo zadatak koji upotrebljava petlju.

Izradi program koji pet puta ispisuje "micro:bit"!

Pomoć:

Prenesi naredbu za petlju u dio prozora za slaganje blokova naredbi.

Prenesi naredbu za ispis (print) u dio prozora za slaganje blokova naredbi.

Postavi kontrolnu varijablu repeat petlje na 5.

Ubaci naredbu za ispis (print) unutar repeat naredbe.

Upiši u naredbu za ispis (print) "micro:bit" bez navodnika.

Pokreni program.

null
Rješenje Blockly zadatka
Rješenje Blockly zadatka.

Riješimo sada jedan kompleksniji zadatak koji upotrebljava boje.

Program oponaša semafor tako da tri puta ispiše crvenu, jedanput žutu te dvaput zelenu boju.

Ono što će program ispisati jesu heksadekadski kodovi za boje prema RGB modelu boja.

Napomena:

Crvena se u paleti nalazi u drgom redu i trećem stupcu, žuta u petom redu i trećem stupcu, a zelena u šestom redu i trećem stupcu.

Pomoć:

Prenesi naredbu repeat u prozor za slaganje blokova. Promijeni broj ponavljanja na tri.

Umetni naredbu print unutar naredbe repeat te ubaci crvenu boju.

Ispod naredbe repeat spoji naredbu print u koju ćeš ubaciti žutu boju.

Ispod naredbe print dodaj još jedan repeat koji će se ponavljati dvaput, a ispisivat će zelenu boju.

Postupak:

#ff0000

#ff0000

#ff0000

#ffff00

#33ff33

#33ff33

Rješenje Blockly zadatka
Rješenje Blockly zadatka.

Kao što vidimo na prethodnom zadatku, naredbe iz toolboxa s lijeve strane možemo ubacivati onoliko puta koliko nam je potrebno u desni dio prozora za slaganje blokova naredbi.

Kutak za znatiželjne

Zaslon čine sitne točkice koje nazivamo pikselima. Svaki piksel na zaslonu ima svoju boju. Prema RGB modelu boja postoje tri osnovne boje koje mješavinom čine sve boje koje računalo može prikazati. Kratica RGB označava te tri osnovne boje: crvenu (R – red, engl.), zelenu (G – green, engl.) i plavu (B – blue, engl.). Za boju svakog piksela u memoriji rezerviran je jedan bajt, odnosno osam bitova. Naravno, najmanja dekadska vrijednost koju možemo zapisati u 8 bitova jest 0, a najveća 255. U heksadekadskom sustavu to su vrijednosti od 00 do FF, pri čemu 00 označava nikakvu zastupljenost boje, dok ff označava maksimalnu zastupljenost boje. Pri označavanju neke boje na početak stavljamo #, a nakon toga po dvije heksadekadske znamenke za svaku od triju osnovnih boja. Tako će, primjerice, crvena imati kôd # ff 00 00, jer je crvena zastupljena maksimalno (ff), a zelena i plava nikako (00). Zanimljivo je da je kôd za crnu boju #000000, a za bijelu #ffffff.

RGB
Pojašnjenje RGB modela boja. Na krugovima različitih boja upisane su različite oznake, a ispod toga su njihova objašnjenja.

Za više informacija o heksadekadskom sustavu brojeva posjeti Edutorij, i to prvi razred srednje škole, jedinicu 4.4. Heksadekadski brojevni sustav.

Što će se dogoditi ako u blok za unos boje unesemo drugu nijansu crvene? Kako će u tom slučaju izgledati heksadekadski zapis boje i hoće li plava i zelena boja biti zastupljene?

MakeCode Editor

Prikazali smo principe slaganja blokova naredbi pomoću alata Blockly, no za slaganje blokova koji će se izvoditi na micro:bitu potrebno nam je sučelje koje je prilagođeno mogućnostima micro:bita.

Otvori poveznicu te odaberi neki od ponuđenih tutoriala.

Nakon završenog tutoriala, vrati se na početnu stranicu te klikni na gumb New Project.

MakeCode Editor
Sučelje MakeCode Editora.

Program možemo testirati i bez spajanja micro:bita, pomoću micro:bit simulatora s lijeve strane zaslona.

Micro:bit program pokreće se kada uključimo micro:bit, a ovisno o tome jesmo li blok naredbi slagali unutar naredbe on start ili forever, program će se izvesti jednom ili će se izvoditi dok se micro:bit ne isključi. Također, micro:bit možemo programirati da reagira na gumbe, trešnju, priključke, ubrzanje, količinu svjetlosti, položaj kompasa i temperaturu.

Izradi program koji će pritiskom na gumb A, pomoću LED dioda ispisati križić, a pritiskom na gumb B, pomoću LED dioda ispisati kvačicu. Program će služiti Aniti u igri istina ili laž.

Križić i kvačica
Zaslon MakeCodea koji je programiran da pritiskom na gumb A LED diodama ispiše križić, a prtiskom na B kvačicu.

Kutak za znatiželjne

Oni koji žele znati više mogu u bilo kojem trenutku na sredini gornjeg dijela zaslona prebaciti s Blocks sučelja na {} JavaScript kôd. Mogu ga zatim usporediti s blokovima naredbi i na taj način učiti JavaScript, mrežni skriptni programski jezik.

...i na kraju

Za konkretnu primjenu programiranja, pohitajte u najbližu knjižnicu, posudite micro:bit, spojite ga s računalom te krenite sa slaganjem blokova naredbi. Možda da iznenadite roditelje s micro:bit programom koji ispisuje njihovo ime?

Mogućnost primjene micro:bita, poput tvoje mašte, nema granica. Kreni!

Posudba micro:bita
Nasmiješena Anita koja je posudila micro:bit u gradskoj knjižnici.
Povratak na vrh