Matematika i micro:bit - 5. razred

Uputa za učitelje

Koliki dio ekrana svijetli

Izradite program koji će pritiskom na lijevi gumb generirati paljenje nekoliko lampica na ekranu (da zasvijetli jedan dio ekrana), a pritiskom na desni gumb ispisati razlomak koji opisuje koliki dio ekrana svijetli. Program treba raditi tako da pritiskom lijevog gumba, zasvijetli dio ekrana. Pritiskom desnog gumba prikazuje se traženi razlomak. Ponovnim pritiskom lijevog gumba zadaje se novi zadatak.

Korištenje s učenicima

Predmet Matematika
Razred 5., osnovna škola
Polugodište 2.
Nastavna cjelina Razlomci
 Tema Izrazimo razlomkom dio cjeline
Ključne riječi razlomak
Ideja i izrada materijala Antonija Horvatek

Nakon što s učenicima kroz zadatke u kojima je obojen dio pravokutnika, kruga i slično, provježbamo kako razlomkom izraziti koliki je dio lika obojen, tj. kako sa slike iščitati razlomak, za daljnje vježbanje može se koristiti micro:bit. Pomoću njega, pritiskom na gumb A (lijevi gumb) generira se zadatak u kojem na ekranu zasvijetli nekoliko lampica, a učenik tada treba razmisliti koliki dio ekrana svijetli i upitati se koji razlomak opisuje taj dio. Pritiskom na gumb B (desni gumb) ispisuje se traženi razlomak te time učenik provjeri je li dobro zaključio koje je rješenje. Ponovnim pritiskom lijevog gumba dobiva se novi zadatak, tj. ponovo zasvijetli neki dio ekrana.

 

Zadaci na micro:bitu ujedno nas navode na zaključak da se ponekad pomoću više razlomaka može opisati isto rješenje (npr. kad zasvijetle dva retka lampica, tada svijetle 2/5 ekrana (dva od ukupno pet redaka) , ali ujedno i 10/25 ekrana (10 od ukupno 25 lampica)), a jasnije rješenje je ono u kojem su manji brojnik i nazivnik (kasnije ćemo učiti o neskativim razlomcima). Dobro je da učitelj ovaj zaključak istakne u zajedničkom radu s djecom, odnosno da učenike navede na isti.

Učenici pomoću ponuđenog programa mogu vježbati na razne načine:

  • Jedan je vježbanje samostalno kod kuće.
  • Vježbati se može i na dopunskoj nastavi na kojoj imamo učenike s različitim teškoćama/potrebama, zbog čega za svakoga posebno treba pripremiti materijale. Učenici koji imaju poteškoća s ovakvim zadacima, jednostavno i samostalno mogu vježbati pomoći micro:bita. Osim što vježbaju gradivo matematike, time ih ujedno navikavamo na samoprocjenu svog znanja (kroz povratnu informaciju koju micro:bit daje o točnosti rezultata) i na uočavanje da i samostalnim radom (bez učitelja) mogu napredovati.

Na redovnoj nastavi također možemo koristiti micro:bit s danom datotekom. Jedan je način da na kraju sata, na kojem smo zajedno uvježbali ovo gradivo, napravimo igru/natjecanje između učenika. Učenici će igrati u parovima. Na papiru trebaju napraviti tablicu s dva retka, na početku redaka napisati svoja imena, a zatim naizmjenice rješavati zadatke koje zadaje micro:bit, te u tablicu kod svog imena napisati plus ako je točno riješen zadatak, odnosno minus ako je netočno.

U nastavku pogledajte upute za izradu programa ili ga odmah isprobajte i preuzmite.

Upute za izradu programa

Uvod  

Opišimo kako izraditi program koji će pritiskom na lijevi gumb generirati paljenje nekoliko lampica na ekranu (da zasvijetli jedan dio ekrana), a pritiskom na desni gumb ispisati razlomak koji opisuje koliki dio ekrana svijetli.

Budući da se ekran micro:bita sastoji od 5x5 lampica, razlomak kojim se opisuje koliki dio ekrana svijetli, može imati nazivnik 5 ili 25. U programu ćemo namjestiti da se paljenje lampica izvede na jedan od sljedećih načina:

  • upalit će se nekoliko gornjih redaka (tada ćemo imati petine, jer će biti upaljeno nekoliko od ukupno 5 redaka),
  • upalit će se nekoliko stupaca (tada ćemo opet imati petine, jer će biti upaljeno nekoliko od ukupno 5 stupaca),
  • upalit će se nekoliko cijelih redaka i još nekoliko lampica u sljedećem retku ali ne cijeli taj (zadnji) redak (tada ćemo imati dvadesetpetine),
  • upalit će se nekoliko cijelih stupaca i još nekoliko lampica u sljedećem stupcu ali ne cijeli taj (zadnji) stupac (tada ćemo također imati dvadesetpetine).

Usput naučimo kako su određeni položaji lampica tj. kakav koordinatni sustav imamo na micro:bitu i upoznajmo naredbu Plot pomoću koje se pali određena lampica čiji je položaj određen koordinatama u danom koordinatnom sustavu.

Program treba raditi tako da:

  • Pritiskom lijevog gumba, zasvijetli dio ekrana.
  • Korisnik tada treba razmisliti koliki dio ekrana svijetli i koji razlomak opisuje taj dio.
  • Pritiskom na desni gumb prikazuje se traženi razlomak.
  • Ponovnim pritiskanjem lijevog gumba zadaje se novi zadatak, tj. ponovo zasvijetli neki dio ekrana.

Program se izrađuje u Microbit Editoru, https://makecode.microbit.org/ .

Korak 1

Definiramo tri varijable: opcija, RetciStupci i Jos.

Varijabla opcija će slučajnim odabirom poprimiti vrijednost od 0 do 3. Te će vrijednosti predstavljati četiri mogućnost za paljenje lampica na ekranu:

  • ako je varijabla opcija poprimila vrijednost 0, namjestit ćemo da se upale sve lampice iz nekoliko gornjih redaka micro:bita (od nultog retka do onoga kolika je vrijednost varijable RetciStupci),
  • ako je varijabla opcija poprimila vrijednost 1, namjestit ćemo da se upale sve lampice od nultog do onog retka kolika je vrijednost varijable RetciStupci i još da se u prvom sljedećem retku upale lampice od nulte do one kolika je vrijednost varijable Jos,
  • ako je varijabla opcija poprimila vrijednost 2, namjestit ćemo da se upale sve lampice iz nekoliko lijevih stupaca micro:bita (od nultog stupca do onoga kolika je vrijednost varijable RetciStupci),
  • ako je varijabla opcija poprimila vrijednost 3, namjestit ćemo da se upale sve lampice od nultog do onog stupca kolika je vrijednost varijable RetciStupci i još da se u prvom sljedećem stupcu upale lampice od nulte do one kolika je vrijednost varijable Jos.

Za paljenje lampica koristit ćemo naredbu Plot X Y koju možemo izabrati iz grupe naredbi Led. X i Y u toj naredbi predstavljaju kordinate, tj. dva broja koja određuju položaj lampice na ekranu. Sljedeća slika prikazuje s koja je dva broja/koordinate određen položaj svake pojedine lampice.

Ishodište koordinatnog sustava, tj. točka (0,0) nalazi se u gornjem lijevom kutu ekrana.

Donja slika prikazuje koja se lampica pali ako u naredbu plot upišemo koordinate 0 i 4 (0 za X, a 4 za Y), tj. što radi naredba plot 0 4.

Iz gornjeg opisa jasno je da ćemo varijablu RetciStupci definirati da slučajnim  odabirom poprimi vrijednost od 0 do 3 (njome možemo paliti sve retke/stupce osim zadnjeg, dakle retke/stupce od nultog do trećeg), a varijablu Jos također da poprimi vrijednosti od 0 do 3 (njome ćemo paliti određen broj lampica u nekom retku/stupcu ali ne cijeli redak/stupac, tj. palit ćemo lampice određene kordinatama od 0 do 3).

Korak 2

Uklapanje dosad opisanih naredbi pod naredbu on button  pressed izgleda ovako:

Ubacimo ovdje još naredbu za brisanje sadržaja ekrana prije paljenja lampica.

Korak 3

Sad isprogramirajmo  paljenje lampica. Budući da se one pale ovisno o vrijednosti varijable opcije, koja može poprimiti četiri vrijednosti (od 0 do 3), imat ćemo četiri if then naredbe.

Ako je vrijednost varijable opcija jednaka 0, tada želimo da se upale lampice u retcima od nultog do onoga kolika je vrijednost varijable RetciStupci. Moramo imati brojač (for naredbu) koji će postizati vrijednosti od 0 do vrijednosti varijable RetciStupci i koji će predstavljati redak, te još jedan brojač (u drugoj for naredbi) koji će postizati vrijednosti od 0 do 4 i koji će predstavljati stupac. Dakle, u retcima od nultog do onog određenog sa RetciStupci upalit ćemo sve lampice od nulte do četvrte.

Brojači (varijable) u for petljama mogu imati bilo koje nazive (osim naziva varijabli koje koristimo u druge svrhe), a u ovom slučaju to su k i l. Dakle, varijabla k predstavlja redak u kojem palimo lampicu, a varijabla l stupac. Odnosno, k i l su koordinate lampice koju palimo naredbom plot.

Pripadni skup naredbi izgleda ovako.

Unutar ove if then naredbe još namjestimo vrijednosti varijabli  koje se kao rješenje trebaju ispisivati pritiskom na gumb B (pritiskom na gumb B ispisat će se odgovarajući razlomak, npr. 3/5). Naime, iako se sad vrijednosti tih varijabli ne ispisuju, one se ipak na različite načine definiraju ovisno o vrijednosti varijable opcije, pa kad već definiramo naredbe za različite vrijednosti te varijable, definirajmo ih sve. Budući da u ovom slučaju palimo lampice u određenom broju redaka (cijelih redaka), upaljene će lampice predstavljati Petine od ukupnog broja lampica, pa varijablu Nazivnik (koja će predstavljati nazivnik traženog razlomka) postavimo na vrijednost 5.

Korak 4

Nadalje vrijednost varijable RetciStupci određuje broj upaljenih redaka, ali ne na način da je ona jednaka tom broju, već je ona za 1 manja. Naime, uočimo da kad je RetciStupci=0, tada se upale lampice iz nultog stupca, tj. upale se lampice iz Jednog retka. Dakle, za RetciStupci=0, broj upaljenih redaka jednak je 1. Slično tome, za RetciStupci=1, broj upaljenih redaka je 2, za RetciStupci=2, broj upaljenih redaka je 3 itd. Dakle, broj upaljenih redaka je za 1 veći od vrijednosti varijable RetciStupci. Stoga je i brojnik traženog razlomka za 1 veći od vrijednosti te varijable.

Ako varijablu koja će predstavljati traženi brojnik nazovemo Brojnik, njezinu vrijednost definiramo kao vrijednost varijable RetciStupci uvećanu za 1.

Ovdje su naredbe kojima definiramo vrijednosti varijabli Brojnik i Nazivnik.

Te naredbe uklopimo unutar gore definirane if then naredbe.

Korak 5

Cijeli taj if – then skup ugnijezdimo unutar početne on button A pressed naredbe.

Time smo isprogramirali sve naredbe vezane uz slučaj kad je vrijednost varijable opcije jednaka nuli.

Korak 6

Sad definirajmo koje će se lampice upaliti ako je vrijednosti varijable opcije jednaka 1.

U tom slučaju želimo da se upale sve lampice od nultog do onog retka kolika je vrijednost varijable RetciStupci i još da se u prvom sljedećem retku upali onoliko lampica kolika je vrijednost varijable Jos.

Paljenje svih lampica u retcima od nultog do onoga kolika je vrijednost varijable RetciStupci programiramo na isti način kao kad je vrijednost varijable opcije jednaka 0.

Paljenje lampica u sljedećem retku programiramo sljedećom petljom.

Korak 7

Spojimo te naredbe, odnosno ugnijezdimo ih unutar if – then naredbe kojom ćemo ispitati je li vrijednost varijable opcije jednaka 1.

Korak 8

Sad još definirajmo vrijednosti varijabli Brojnik i Nazivnik kao što je na prikazano slici. Naime, vrijednost varijable Brojnik sad mora biti jednaka broju svih upaljenih lampica, a vrijednost varijable Nazivnik točno 25 (jer je ukupno 25 lampica).

Ugnijezdimo te dvije naredbe u pripadnu if – then petlju.

Tu petlju ugnijezdimo unutar početne on button A pressed naredbe.

Korak 9

Sad definirajmo paljenje lampica i definiranje vrijednosti varijabli Brojnik i Nazivnik u slučaju kad je vrijednost varijable opcije jednaka 2. Tada želimo da se upale lampice u nekoliko cijelih stupaca. Skup pripadnih naredbi izgleda ovako.

Zadnji slučaj za vrijednost varijable opcije je kad ona poprimi vrijednost 3. Tada želimo da se upali nekoliko cijelih stupaca i još nekoliko lampica u sljedećem stupcu. Skup pripadnih naredbi izgleda ovako.

Zadnje dvije if – then naredbe također ugnijezdimo unutar početne on button A pressed naredbe.

Korak 10

Definirajmo da se pritiskom na gumb B ispiše razlomak koji opisuje koliki dio ekrana svijetli. Budući da smo vrijednosti varijabli Brojnik i Nazivnik, koje predstavljaju taj razlomak, već definirali unutar on button A pressed naredbe, sad još samo moramo isprogramirati ispis.

Unutar On button B pressed naredbe prvo možemo umetnuti naredbu za brisanje sadržaja ekrana i za pauzu od 200 milisekundi (ili koliko već želimo, ako uopće želimo).

Da bi se nekon toga vrijednost razlomka ispisala koristeći kosu crtu umjesto razlomačke crte, npr. u bliku 13/25, koristimo naredbu join iz skupine Text (koju možemo naći među Advanced naredbama). Naredba join, sve što navedemo unutar nje, spaja u jedan string i ispisuje poput skladne cjeline.

Skup pripadnih naredbi izgleda ovako.

Gotov program

Isprobaj i preuzmi

Link za preuzimanje hex. datoteke s gotovim programom za micro:bit je ovdje.

Nešto vam nije jasno u programu? Pogledajte u našim uputama što vas zanima.