65.c. vizualno programiranje - udzbenik.hr

13
1 5. Rješavanje problema programiranjem 65.C. Vizualno programiranje Rješavanje problema u Scratchu Stvarati i preuređivati programe sa strukturom gra- nanja. Stvarati i preuređivati programe sa strukturom uvjetnoga ponavljanja. Rješavati složeni problem ra- stavljajući ga na potprobleme. U petom razredu naučili ste osnove programiranja u Scratchu: crtali ste kvadrate i pomicali ribicu u akvariju. Ove godine naučit ćete: • programirati s dva lika • upotrebljavati varijable • likovi će donositi odluke ovisno o vrijednosti varijable • upotrebljavati različite petlje za ponavljanje naredbi Vježba 1. Maca gleda u lopticu Na pozornicu ćemo postaviti dva lika: standardni početni lik (macu) i dodati loptu. Lopta neka se okreće prema pokazivaču miša u trajanju 1 s. Maca treba uvijek gledati u loptu. Rješenje: Zadatak ćemo riješiti u 3 koraka: 1) dodati novi lik – loptu 2) dodati naredbe lopti 3) dodati naredbe maci 1) dodavanje drugog lika: Ispod pozornice kliknite na Odaberi lik (zeleno na slici 2.) pa u ponuđenoj galeriji likova odaberite loptu (Ball): Slika 1. Pokazivačem miša pomiči lopticu, a maca treba uvijek gledati u lopticu. Slika 3. Lik Ball Slika 2. Dodavanje drugog lika Instalirajte Scratch Desktop s poveznice: https://scratch.mit. edu/download

Upload: others

Post on 29-Oct-2021

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 65.C. Vizualno programiranje - udzbenik.hr

15. Rješavanje problema programiranjem

65.C. Vizualno programiranje

Rješavanje problema u Scratchu

Stvarati i preuređivati programe sa strukturom gra-nanja. Stvarati i preuređivati programe sa strukturom uvjetnoga ponavljanja. Rješavati složeni prob lem ra-stavljajući ga na potprobleme.

U petom razredu naučili ste osnove programiranja u Scratchu: crtali ste kvadrate i pomicali ribicu u akvariju. Ove godine naučit ćete:

• programirati s dva lika

• upotrebljavati varijable

• likovi će donositi odluke ovisno o vrijednosti varijable

• upotrebljavati različite petlje za ponavljanje naredbi

Vježba 1. Maca gleda u lopticu

Na pozornicu ćemo postaviti dva lika: standardni početni lik (macu) i dodati loptu.

Lopta neka se okreće prema pokazivaču miša u trajanju 1 s. Maca treba uvijek gledati u loptu.

Rješenje:

Zadatak ćemo riješiti u 3 koraka:

1) dodati novi lik – loptu

2) dodati naredbe lopti

3) dodati naredbe maci

1) dodavanje drugog lika:

Ispod pozornice kliknite na Odaberi lik (zeleno na slici 2.) pa u ponuđenoj galeriji likova odaberite loptu (Ball):

Slika 1. Pokazivačem miša pomiči lopticu, a maca treba uvijek gledati u lopticu.

Slika 3. Lik Ball

Slika 2. Dodavanje drugog lika

Instalirajte Scratch Desktop s poveznice: https://scratch.mit.edu/download

Page 2: 65.C. Vizualno programiranje - udzbenik.hr

2 5. Rješavanje problema programiranjem

2) dodavanje naredbe lopti (skripta za loptu):

Lopta se mora okrenuti prema pokazivaču miša u 1 sekundi. Kad ponovno pomaknemo miša, želimo da se lopta okrene prema novom položaju. Uobičajeno, želimo da se naredbe (tzv. skripta) počnu iz-vršavati kad je kliknuta . Znači, iz popisa izbornika odaberemo

, pa naredbu: .

Naredbe treba ponavljati, pa iz odaberite . Naredbe će se ponavljati dok ne kliknemo .

Preostaje još dodati naredbu kojom će se loptica okretati prema

mišu. Iz odaberite .

Skripta za loptu je gotova. Provjerite svoju skriptu na slici 4. Primi-jetite da se u gornjem desnom kutu nalazi sličica lopte. To znači da upravo programirate naredbe za loptu.

3) dodavanje naredbe maci (skripta za macu):

Da bi počeli pisati naredbe za macu, prvo kliknite na nju:

.

Prvo umetnite iste naredbe kao za loptu, samo iz odaberite:

, pa kli-kom na strelicu odaberite Ball. Naravno, Ball je vidljiv samo ako ste prije umet-nuli taj lik.

Program je gotov. Kliknite , pomičite miša i poigrajte se. Postavite miša tako da stavite loptu maci u ruke. Tko će brže?

Želite li spremiti program, iz izbornika Da-toteka, odaberite Spremi na računalo. Oda-berite mapu u koju želite spremati i upišite ime datoteke, npr. vježba 1. Scratch će dodati nastavak .sb3.

Rješenje u datoteci 65Cvjezba 1.sb3.

Popis naredbi za određeni lik zove se skripta.

Datoteka u Scratchu: ime_datoteke.sb3.

Slika 4. Skripta za loptu

Slika 6. Maca s loptom

Page 3: 65.C. Vizualno programiranje - udzbenik.hr

35. Rješavanje problema programiranjem

Vježba 2. Veličina mace

Sastavimo program koji u varijablu veličina zadaje postotak veličine mace (100% je standardna veličina, 50% je pola veli-čine mace, itd.) pa mijenja veličinu mace ovisno o zadanom postotku.

Rješenje:

Varijable zadajete tako da iz izbornika odaberete: . Otvara se dijaloški okvir kao na slici 8. Upišite ime varijable: veličina i kliknite U redu.

U izborniku pojavila se zadana varijabla: , a na po-zornici vidljiva je varijabla vježba: . Njena početna vrijed-nost je 0. Želite li da varijabla ne bude vidljiva na pozornici isključite potvrdnu kvačicu pokraj imena varijable.

Odberite naredbu . Klikom na strelicu odaberite varijablu koju ste upravo zadali.

Sada maca mora promijeniti veličinu. Iz odaberite naredbu:ppp

. Iz uzmite i umetnite ju umjesto broja 100 (vidi sliku 10.).

Sada umjesto 0 upišite neki broj, npr. 75 kao na slici 11. Dovoljno je kliknuti na blok naredbi i maca će se smanjiti na tri četvrtine polazne. Želite li macu povećati, upišite broj veći od 100 (jer je npr. 125% = 1.25 >1).

Pazite, ako kliknete na blok naredbi dok niste upisali broj maca će ne-stati, jer je njena veličina 0. Kad upišete broj i ponovno kliknete na na-redbe, maca će se pojaviti.

Rješenje u datoteci 65Cvjezba2.sb3.

Naredbe se mogu izvršavati i klikom na njih, bez upotrebe što možete koristiti pri testiranju programa.

Slika 7. Mace različite veličine (3 primjera izvršenja programa)

Slika 8. Dijaloški okvir za defi nira-nje varijable

Slika 9. Zadavanje varijable

Slika 10. Postavljanje veličine mace

Slika 11. Rješenje vježbe 2.

Page 4: 65.C. Vizualno programiranje - udzbenik.hr

4 5. Rješavanje problema programiranjem

Vježba 3. Crtanje kvadrata zadane veličine stranice.

U petom razredu crtali ste kvadrate zadane duljine stranice. U mate-matici ste naučili duljinu stranice označavati varijablom (najčešće a). Sastavimo program koji crta kvadrat duljine stranice a.

Rješenje:

Da bi u Scratchu mogli crtati prvo morate dodati proširenje za crta-nje. Kliknite i odaberite proširenje Olovka kao na slici 12.

Sada će se u popisu izbornika pojaviti novi izbornik . Klikom na nje-ga otvorit će se sve naredbe za crtanje. Početno, olovka ima dignuto pero pa svaki program u kojem želite crtati započnite naredbom:

Prisjetite se kako ste u 5. razredu crtali kvadrat stranice duljine 100:

Da biste nacrtali kvadrat stranice dulji-ne a, prvo zadate varijablu, pa umjesto broja 100 stavite varijablu a.

Rješenje u datoteci 65Cvjezba3.sb3.

Slika 12. Proširenje za crtanje

Slika 13. Kvadrat stranice duljine 100

Slika 14. Crtanje kvadrata: 3 izvršenja programa, za a = 50,a = 75 i a = 100.

Za brisanje crteža koristite naredbu . Možete ju staviti na početak

programa pa će se obrisati posljednji nacrtani kvadrat ili je imati odvojeno od ostalih naredbi. Tada klikom na tu naredbu brišete crtež.

Zadatak: Pomoću programa u vježbi 3. nacrtaj niz od 10 kvadrata tako da najveći kvadrat ima duljinu stranice 100, a svaki sljedeći za 10 manju duljinu stranice:

Page 5: 65.C. Vizualno programiranje - udzbenik.hr

55. Rješavanje problema programiranjem

Vježba 4. Dovedi macu do balona

Sastavimo program koji:

• balon stavlja na neki slučajni položaj na pozornici, lijevo ili desno od počet-nog položaja (0, 0)

• maca iz početnog položaja treba doći do balona i vratiti se na početak, ali tako da nacrta crvenu crtu ako je balon desno od mace ili plavu crtu ako je balon lijevo od mace.

Pozornica ima koordinatni sustav sličan onome koji poznajete iz Matematike. Da bi to istražili u po-tvrdite kvačice u:

.

Početni je položaj (0, 0) i postavljate ga naredbom:

.

1) Naredbe za balon:

Umetnite balon na pozornicu (ballon1).

Započnite s:

ZZapppppppočo niite s::

Želite ga staviti na neki slučajni položaj u smjeru lijevo – desno.

Slučajni broj zadajete tako da iz odaberete naredbu

. Položaj balona može biti od -200 do 200, pa upišite te brojeve umjesto 1 i 10.

Zadajte varijablu položaj i u nju stavite taj slučajan broj:

Pomaknite balon u taj položaj:

Dakle, pomak gore – dolje ostaje 0.

Slika 15. Ako je balon desno od početnog položaja crta je crvena, a ako je balon lijevo od početnog po-ložaja crta je plava

Slika 16. Maca se nalazi lijevo i gore od početnog položaja, pa jex = -148 < 0, a y = 48 > 0.

Page 6: 65.C. Vizualno programiranje - udzbenik.hr

6 5. Rješavanje problema programiranjem

Sada maci treba reći da može krenuti.

Koristite naredbu:

Uputa:

Kliknite na strelicu, odaberite Nova poru-ka i upišite: kreni.

2) Naredbe za macu:

Maca će se početi kretati nakon što joj balon pošalje da krene pa prvo izaberite:

Postavite macu na položaj (0,0):

Sada treba postaviti boju pera ovisno o položaju balona:

ako je položaj > 0 onda

boja crvena

inače

boja plava. Iz odaberite:

Iza ako slijedi uvjet položaj > 0. Iz odaberite pa umetnite varijablu položaj, a umjesto 50 napišite 0.

Namjestite boju pera: iz odaberite , kli-knite na zelenu boju pa ju promijenite u crvenu:

Sada kliknite desnim klikom na tu na-redbu i iz brzog izbornika odaberite Dupliciraj.

Jednostavno izmijenite crvenu boju u plavu.

Page 7: 65.C. Vizualno programiranje - udzbenik.hr

75. Rješavanje problema programiranjem

Čitava naredba odluke izgleda ovako:

Maca sada treba otići do balona

i

vratiti se u početni položaj: .

Kliknite na pa isprobajte igru.

Evo čitavih programa za svaki lik:

Rješenje u datoteci 65Cvjezba4.sb3.

Page 8: 65.C. Vizualno programiranje - udzbenik.hr

8 5. Rješavanje problema programiranjem

Vježba 5. Razgovor dvije mace

Leteća maca zadaje zadatak zbrajanja maci (vidi sliku 17.)

Svaki lik neka započne kad se na njega klikne.

Rješenje:

Umetnite leteću macu (Cat Flying). Maca gleda udesno pa je prvo treba okrenuti ulijevo. Kliknite na Kostimi, pa odaberite Obrni vodoravno.

Leteća maca okrenut će se ulijevo.

Započnite sastavljati naredbe s .

Zadajte dvije varijable a i b pa u njih stavite dva broja, npr.

Sada leteća maca treba izreći zadatak. Da bi dobili oblačić kao na slici 17. iz odaberite .

Da bi složili rečenicu oblika Koliko je 3 + 4 iz odaberite nared-bu . Ona omogućuje spajanje dviju riječi, ali umjesto jedne od riječi možemo dodati još takvih naredbi pa spojiti više riječi.

Umjesto „apple“ napišite „Koliko je “ (ostavite na kraju jedan razmak), a umjesto „banana“ dodajte istu naredbu:

Slika 18. Uređivač likova

Slika 17. Razgovor dviju maca

Page 9: 65.C. Vizualno programiranje - udzbenik.hr

95. Rješavanje problema programiranjem

Sada umjesto „apple“ dodajte varijablu a, a umjesto „banana“ još jed-nu takvu naredbu u kojoj spojite „+“ i varijablu b:

Cijelu naredbu dodajte naredbi „reci“:

Program za leteću macu je gotov.

Kliknite na macu, započnite s .

Da bi maca rekla točan rezultat mora zbrojiti a i b. Iz odaberite pa umetnite a i b: .

Operaciju zbrajanja dodajte u naredbu „reci“ .

Možete se poigrati pa ispred te naredbe staviti da maca razmišlja, npr:

.

Obratite pažnju da je oblačić za „razmišljaj“ drugačiji nego za „reci“.

Evo čitavih naredbi za svaki lik:

Rješenje u datoteci 65Cvjezba5.sb3.

Page 10: 65.C. Vizualno programiranje - udzbenik.hr

10 5. Rješavanje problema programiranjem

Vježba 6. Maca pita leteću macu jesu li brojevi djeljivi

Sada neka maca zada dva broja, a i b i pita leteću macu je li a djeljiv s b?

Uputa: a djeljiv s b ako nema ostatka pri dijeljenju a i b.

Rješenje:

Sve potrebne naredbe sada su poznate, osim određivanja ostatka pri dijeljenju dva broja. Iz uzmite naredbu . Želite li pro-vjeriti ostatak pri dijeljenju a s b složit ćete naredbu: . Broj a je djeljiv s b ako je ostatak pri dijeljenju jednak 0. Dakle, da bi brojevi bili djeljivi treba biti ispunjen uvjet . Ako je ostatak 0, leteća maca će reći da su brojevi djeljivi, a inače će reći da nisu djelji-vi. Evo naredbi za svaki lik:

Slika 19. Razgovor ako su brojevi djeljivi

Slika 20. Razgovor ako brojevi nisu djeljivi

Rješenje u datoteci 65Cvjezba6.sb3.

Page 11: 65.C. Vizualno programiranje - udzbenik.hr

115. Rješavanje problema programiranjem

Vježba 7. Lovice u moru

Sastavimo program u kojem se me-duza kreće nasumično, a riba se kre-će pomoću strelica na tipkovnici u četiri smjera: gore, dolje, desno i li-jevo po 10 koraka. Svaki put kad riba dotakne meduzu riba dobije 1 bod. Igra traje sve dok riba ne osvo-ji 50 bodova.

Rješenje:

Prvo dodajte sliku pozornice pa među likovima nađite meduzu i ribu. Meduzi samo treba dodati na-sumično kretanje.

Ribi treba dodati kretanje pomoću strelica:

� desno: � lijevo:

� gore: � dolje:

Slika 21. Riba i meduza u moru.

Slika 22. Naredbe za meduzu

Page 12: 65.C. Vizualno programiranje - udzbenik.hr

12 5. Rješavanje problema programiranjem

Kad riba dodirne meduzu, dobije bod.

Napravite varijablu bod. Na početku programa njena vrijednost je 0:

Igra traje dok riba ne osvoji 50 bodova. Koristit ćete petlju s uvjetom:

Kad riba dodirne meduzu (Jellyfi sh), broj bodova se poveća za 1:

Na kraju, neka riba kaže:

Pobjeda!

i igra završava:

Rješenje u datoteci 65Cvjezba7.sb3.

Slika 23. Naredbe za ribu

Page 13: 65.C. Vizualno programiranje - udzbenik.hr

135. Rješavanje problema programiranjem