UPOTREBA PROMENLJIVIH I KONTROLNIH NAREDBI U PROJEKTIMA MIKROBITA
U ovom tutorijalu učenici će se upoznati sa osnovnim konceptom promenljivih u programiranju. Kroz niz zanimljivih aktivnosti, naučiće kako da kreiraju i koriste promenljive kao simbolička imena za memorijske lokacije, čime se omogućava efikasno upravljanje podacima. Učenici će imati slobodu da imenuju promenljive prema sopstvenim željama, uz preporuku da imena budu jasna i opisuju sadržaj koji se u promenljivama čuva.
Na kraju časa, svi radovi će biti predstavljeni kako bi se stvorila prilika za međusobno komentarisanje, davanje sugestija i razmenu id
Na kraju časa, svi radovi će biti predstavljeni kako bi se stvorila prilika za međusobno komentarisanje, davanje sugestija i razmenu id
Da se podsetimo: kreiranje promenljivih (variables)
Za kreiranje promenljivih koristimo paletu Variables. Prvo se sa naredbom make variable kreira promenljiva pod nekim imenom, a onda postanu dostupne i komande za postavljanje vrednosti promenljivoj, kao i za promenu vrednosti promenljivoj.
Promena imena i brisanje promenljive
Da bi ste promenili ime promenljivoj ili obrisali promenljivu treba kliknuti na promenljivu "desnim klikom" da bi se prikazao "kontekst meni", kao što se može videti na slici 2:
Primer 1: Brojač klikova
Opis:
Projekat "Brojač klikova" je jednostavan način za razumevanje kako promenljive funkcionišu u programiranju. Ovaj primer omogućava korisnicima da kreiraju program koji prati broj pritisaka tastera A na Micro:bit-u. Svaki pritisak povećava vrednost promenljive i prikazuje trenutni broj klikova na LED ekranu u realnom vremenu. Ovo je koristan alat za praćenje ponavljajućih događaja na uređaju.
Projekat "Brojač klikova" je jednostavan način za razumevanje kako promenljive funkcionišu u programiranju. Ovaj primer omogućava korisnicima da kreiraju program koji prati broj pritisaka tastera A na Micro:bit-u. Svaki pritisak povećava vrednost promenljive i prikazuje trenutni broj klikova na LED ekranu u realnom vremenu. Ovo je koristan alat za praćenje ponavljajućih događaja na uređaju.
Instrukcije za kreiranje programa "Brojač klikova":
- Inicijalizacija promenljive
- Otvorite MakeCode editor (https://makecode.microbit.org/).
- U paleti Variables, kreirajte promenljivu pod nazivom BrojKlikova.
- Postavite početnu vrednost promenljive na 0 koristeći blok set BrojKlikova to 0 unutar bloka on start.
- Povećavanje broja klikova
- U paleti Input, prevucite blok on button A pressed.
- Unutar ovog bloka:
- Dodajte blok change BrojKlikova by 1 da povećate vrednost promenljive za svaki pritisak tastera.
- Dodajte blok show number BrojKlikova iz palete Basic da prikažete trenutnu vrednost na ekranu Micro:bit-a.
- Testiranje programa
- Preuzmite kreirani program klikom na Download i prenesite ga na Micro:bit uređaj.
- Pritisnite taster A i pratite kako uređaj prikazuje ukupan broj klikova.
Rezultat:
Svaki pritisak tastera A povećava broj u promenljivoj BrojKlikova za jedan i prikazuje ga na LED ekranu Micro:bit-a. Na ovaj način možete jednostavno brojati događaje ili akcije, što čini ovaj primer korisnim i praktičnim za svakodnevnu upotrebu.
Paleta Math
U ovoj lekciji istražićemo kako koristiti promjenljive u programiranju za izvršavanje matematičkih operacija. Kroz praktičan primer, kreiraćete kôd koji množi dva broja, što je odličan način za proveru i primenu znanja tablice množenja. Osim množenja, u zavisnosti od vremena, moguće je proširiti aktivnosti i na druge aritmetičke operacije, kao što su sabiranje, oduzimanje i deljenje. Na kraju lekcije, biće prilike da podelite svoje radove sa drugima, komentarišete ih i dobijete korisne sugestije za poboljšanje.
Aritmetičke operacije: +,-,*,/
Da bi ste izvršili matematičku operaciju sabiranje, oduzimanje, množenje ili deljenje otvorite paletu Math i odaberite jednu od ponuđenih komandi iz grupe komandi 1, vidi sliku 4.
Generisanje slučajnog broja od 0-10
Da bi ste generisali slučajan broj od 0 do 10 sa palete Math odaberite komandu: pick random [0] [10], označeno brojem dva na slici 4. Ukoliko želite vrednost u drugom opsegu, umesto 0 i 10 stavite minimalnu i maksilnu vrednost između kojih treba da bude vrednost slučajnog broja.
Primer 2: Igra sa brojevima – Prikazivanje brojeva i njihovih proizvoda na Micro:bitu
Zadatak: Kreirajte program na Micro:bitu koji će reagovati na klikove tastera. Program treba da prikaže sledeće:
- Kada pritisnete taster A, na ekranu se prikazuje prvi broj.
- Kada pritisnete taster B, na ekranu se prikazuje drugi broj.
- Kada istovremeno pritisnete tastere A i B, na ekranu se prikazuje proizvod tih brojeva.
Instrukcije za zadatak "Igra sa brojevima – Prikazivanje brojeva i njihovih proizvoda na Micro:bitu"
- Priprema:
- Prvo, na Micro:bitu treba da definišete dva broja. Ovi brojevi će biti oni koje ćete prikazivati na ekranu kada pritisnete tastere A i B.
- Na ekranu će biti prikazivani brojevi kada se pritisne odgovarajući taster, i proizvod ta dva broja kada pritisnete oba tastera istovremeno.
- Kreiranje programa:
- Počnite sa inicijalizacijom brojeva. Na primer, neka prvi broj bude 5, a drugi broj 3. Ove brojeve možete kasnije promeniti po želji.
- Dodajte blokove za tastere A i B. Kada je pritisnut taster A, treba da se prikaže vrednost prvog broja na ekranu.
- Kada je pritisnut taster B, treba da se prikaže vrednost drugog broja.
- Za prikazivanje proizvoda dva broja, koristite blok za detekciju kada su oba tastera A i B pritisnuta istovremeno. Kada se ovo dogodi, na ekranu treba da se prikaže proizvod tih brojeva.
- Testiranje programa:
- Kada završite kod, testirajte ga tako što ćete pritisnuti taster A, B, i oboje zajedno. Uverite se da ekran tačno prikazuje:
- Prvi broj kada pritisnete A.
- Drugi broj kada pritisnete B.
- Proizvod oba broja kada pritisnete A i B istovremeno.
- Kada završite kod, testirajte ga tako što ćete pritisnuti taster A, B, i oboje zajedno. Uverite se da ekran tačno prikazuje:
- Dodatne opcije:
- Možete dodati još operacija (sabiranje, oduzimanje) i proširiti ovaj zadatak. Takođe, možete koristiti različite brojeve i eksperimentisati sa ekranom Micro:bit-a.
Zadatak za samostalan rad 1: Proizvod slučajnih brojeva
Generisati dva cela broja, a i b čije su vrednosti slučajni brojevi 0-10. Izračunati proizvod tih brojeva pritiskom na taster A+B i prikazati na mikrobitu.
Zadatak za samostalan rad 2: Propitivanje tablice množenja
Kreiraj program za dva Micro:bit uređaja koji komuniciraju putem radio veze. Prvi Micro:bit ("pošiljalac") šalje ceo broj a, dok drugi Micro:bit ("primalac") prima ovu vrednost, generiše slučajan broj b, i računa proizvod ova dva broja. Na pritiskanje dugmeta A+B, rezultat množenja se prikazuje na ekranu drugog Micro:bita i šalje nazad prvom Micro:bitu, koji prikazuje dobijeni rezultat na svom ekranu.
Pojašnjenje:Ovaj zadatak demonstrira kako Micro:bit uređaji mogu međusobno da komuniciraju koristeći radio funkcionalnost. Ključni elementi uključuju:
Pojašnjenje:Ovaj zadatak demonstrira kako Micro:bit uređaji mogu međusobno da komuniciraju koristeći radio funkcionalnost. Ključni elementi uključuju:
- Slanje i primanje poruka putem radio veze.
- Generisanje slučajnog broja koristeći ugrađene funkcije Micro:bita.
- Sinhronizaciju aktivnosti oba uređaja.
Instrukcije:
Podešavanje radio veze:
- Na oba Micro:bita potrebno je postaviti istu radio grupu pomoću komande radio.setGroup(). Ovo omogućava uređajima da komuniciraju unutar iste mreže.
- Postavi promenljivu a za broj koji će biti poslat.
- Na određen događaj (npr. pritiskanje dugmeta A) šalji vrednost promenljive a koristeći radio.sendNumber(a).
- Na prijem rezultata od drugog Micro:bita, prikaži vrednost na ekranu.
- Primi broj a od pošiljaoca koristeći radio.onReceivedNumber.
- Generiši slučajan broj b pomoću Math.randomRange(min, max).
- Izračunaj proizvod a * b i prikaži rezultat na klik dugmeta A+B.
- Pošalji rezultat nazad pošiljaocu koristeći radio.sendNumber().
- Proveri ispravnost komunikacije tako što ćeš obratiti pažnju na tačnost rezultata i da li oba uređaja ispravno prikazuju i šalju podatke.
Dodatni zadaci
Uneti vrednosti promenljivih a i b, korišćenjem nekih događaja na mikrobitu(pritisak tastera, događaji gestova), a zatim izračunati sledeće izraze i prikazati ih na ekranu mikrobit-a:
a) a2
b) a2+ 2ab+b2
Paleta komandi Math
U nastavku je dat pregled komandi sa palete Math, sa opisima:
Arithmetic Operators (Aritmetički operatori)
- Addition (+)
Dodaje dve vrednosti.
Primer: 3 + 4 vraća 7. - Subtraction (-)
Oduzima drugu vrednost od prve.
Primer: 7 - 4 vraća 3. - Multiplication (*)
Množi dve vrednosti.
Primer: 3 * 4 vraća 12. - Division (/)
Deli prvu vrednost sa drugom.
Primer: 8 / 2 vraća 4.
Remainder
- % (Modulus)
Vraća ostatak pri deljenju prve vrednosti drugom.
Primer: 7 % 3 vraća 1.
Random
- pick random 0 to 10
Generiše slučajan broj između dva navedena broja (uključujući oba).
Primer: pick random 1 to 6 može vratiti bilo koji broj između 1 i 6.
Comparisons
- = (Equal To)
Proverava da li su dve vrednosti jednake.
Primer: 4 = 4 vraća true. - < (Less Than)
Proverava da li je prva vrednost manja od druge.
Primer: 3 < 5 vraća true. - > (Greater Than)
Proverava da li je prva vrednost veća od druge.
Primer: 5 > 3 vraća true.
Advanced Math Functions
- square root (√)
Vraća kvadratni koren vrednosti.
Primer: √16 vraća 4. - absolute value (|x|)
Vraća apsolutnu vrednost broja.
Primer: |-3| vraća 3. - round
Zaokružuje broj na najbliži ceo broj.
Primer: round(3.6) vraća 4. - ceil
Zaokružuje broj na najbliži veći ceo broj.
Primer: ceil(3.2) vraća 4. - floor
Zaokružuje broj na najbliži manji ceo broj.
Primer: floor(3.8) vraća 3.
Trigonometric Functions
- sin(x), cos(x), tan(x)
Računaju sinus, kosinus i tangens ugla (u stepenima).
Primer: sin(90) vraća 1. - asin(x), acos(x), atan(x)
Vraćaju odgovarajuće uglove (u stepenima) za datu vrednost.
Primer: asin(1) vraća 90.
Exponential Functions
- power (x^y)
Vraća rezultat potenciranja broja.
Primer: 2^3 vraća 8. - log(x)
Vraća prirodni logaritam broja.
Primer: log(10) vraća približno 2.302. - e^x
Vraća vrednost eksponencijalne funkcije za dati broj.
Primer: e^2 vraća približno 7.389.
Dodatni primeri za samostalan rad
1. Radio veza sa promenljivama
- Opis: Program gde dva micro:bit uređaja komuniciraju putem radio veze. Jedan uređaj šalje vrednost promenljive, dok drugi prima i koristi je, npr. za kontrolu LED displeja.
- Primer projekta:
- Uređaj 1: Nasumično generiše broj (koristi Math paletu za random) i šalje ga putem radio signala.
- Uređaj 2: Prikazuje primljeni broj na LED displeju.
- Razrada: Koristiti Math funkcije za obradu primljenih vrednosti (npr. izračunavanje kvadrata broja).
- Opis: Program u kojem se vrednost promenljive menja na osnovu unosa korisnika putem dugmadi A i B.
- Primer projekta:
- Dugme A povećava vrednost promenljive.
- Dugme B smanjuje vrednost.
- Na dugme A+B micro:bit prikazuje trenutnu vrednost na ekranu.
- Razrada: Dodati Math operacije, npr. prikaz kvadrata trenutne vrednosti.
- Opis: Program koji koristi Math paletu za kreiranje igre gde micro:bit nasumično generiše broj i korisnik pokušava da pogodi rezultat.
- Primer projekta:
- Nasumično generisanje broja.
- Korisnik unosi pretpostavku putem dugmadi.
- LED ekran prikazuje da li je unos tačan ili pogrešan.
- Opis: Kreiranje programa koji koristi promenljive za kontrolu muzike.
- Primer projekta:
- Promenljiva note menja visinu tona u zavisnosti od vrednosti unosa (npr. svetlosnog senzora ili temperature).
- Dodati funkcionalnost za promenu trajanja nota pomoću Math operacija.
- Opis: Dva micro:bit uređaja – jedan bira nasumičnu melodiju koristeći Math funkcije, dok drugi reprodukuje muziku nakon prijema poruke putem radio veze.
Projekat 3: Generisanje slučajnog broja i sabiranje
Opis: Kreirajte program koji generiše dva slučajna broja između 1 i 10, prikazuje ih na ekranu Micro:bit-a, a zatim sabira te brojeve i prikazuje rezultat.
Kod u MakeCode-u:
Kod u MakeCode-u:
- Na dugme A: generišite prvi slučajni broj i prikažite ga.
- Na dugme B: generišite drugi slučajni broj i prikažite ga.
- Na A+B: sabirajte dva broja i prikažite rezultat.
- Upotrebite Math → pick random za generisanje slučajnih brojeva.
- Kreirajte promenljive, npr. broj1 i broj2, za čuvanje brojeva.
- Koristite + iz palete Math za sabiranje.
Rešenje u javascript-u
let broj1 = 0
let broj2 = 0
input.onButtonPressed(Button.A, function () {
broj1 = Math.randomRange(1, 10)
basic.showNumber(broj1)
})
input.onButtonPressed(Button.B, function () {
broj2 = Math.randomRange(1, 10)
basic.showNumber(broj2)
})
input.onButtonPressed(Button.AB, function () {
let suma = broj1 + broj2
basic.showNumber(suma)
})
let broj2 = 0
input.onButtonPressed(Button.A, function () {
broj1 = Math.randomRange(1, 10)
basic.showNumber(broj1)
})
input.onButtonPressed(Button.B, function () {
broj2 = Math.randomRange(1, 10)
basic.showNumber(broj2)
})
input.onButtonPressed(Button.AB, function () {
let suma = broj1 + broj2
basic.showNumber(suma)
})
Projekat 4: Računanje apsolutne razlike između dva broja
Opis: Kreirajte program koji prihvata dva broja, prikazuje ih, i računa apsolutnu razliku između njih.
Kod u MakeCode-u:
Kod u MakeCode-u:
- Na dugme A: unesite prvi broj.
- Na dugme B: unesite drugi broj.
- Na A+B: izračunajte apsolutnu razliku između brojeva.
- Koristite Math → abs za apsolutnu vrednost razlike.
- Sačuvajte vrednosti u promenljivama x i y.
Rešenje u javascript-u
let x = 0
let y = 0
input.onButtonPressed(Button.A, function () {
x = 5 // Unesite broj ručno ili prilagodite unosu korisnika
basic.showNumber(x)
})
input.onButtonPressed(Button.B, function () {
y = 8 // Unesite broj ručno ili prilagodite unosu korisnika
basic.showNumber(y)
})
input.onButtonPressed(Button.AB, function () {
let razlika = Math.abs(x - y)
basic.showNumber(razlika)
})
let y = 0
input.onButtonPressed(Button.A, function () {
x = 5 // Unesite broj ručno ili prilagodite unosu korisnika
basic.showNumber(x)
})
input.onButtonPressed(Button.B, function () {
y = 8 // Unesite broj ručno ili prilagodite unosu korisnika
basic.showNumber(y)
})
input.onButtonPressed(Button.AB, function () {
let razlika = Math.abs(x - y)
basic.showNumber(razlika)
})
Projekat 5: Računanje kvadratnog korena proizvoda
Opis: Kreirajte program koji prima dva broja, množi ih, računa kvadratni koren proizvoda i prikazuje rezultat.
Kod u MakeCode-u:
Kod u MakeCode-u:
- Na dugme A: unesite prvi broj.
- Na dugme B: unesite drugi broj.
- Na A+B: izračunajte proizvod i njegov kvadratni koren.
- Koristite Math → * za množenje i Math → √ za kvadratni koren.
Rešenje u javascript-u
let a = 0
let b = 0
input.onButtonPressed(Button.A, function () {
a = 9 // Prilagodite unosu korisnika
basic.showNumber(a)
})
input.onButtonPressed(Button.B, function () {
b = 4 // Prilagodite unosu korisnika
basic.showNumber(b)
})
input.onButtonPressed(Button.AB, function () {
let proizvod = a * b
let koren = Math.sqrt(proizvod)
basic.showNumber(koren)
})
let b = 0
input.onButtonPressed(Button.A, function () {
a = 9 // Prilagodite unosu korisnika
basic.showNumber(a)
})
input.onButtonPressed(Button.B, function () {
b = 4 // Prilagodite unosu korisnika
basic.showNumber(b)
})
input.onButtonPressed(Button.AB, function () {
let proizvod = a * b
let koren = Math.sqrt(proizvod)
basic.showNumber(koren)
})
Prethodno
|< Radio veza na mikrobitu |
Sledeće
Kontrolne naredbe u programima mikrobita >| |