Sys Print udzbenik hr Informatika 7 4 A
Sys. Print udzbenik. hr Informatika 7 4 A. Programski jezik FMS Logo Potprogrami
2 Informatika 7 Sys. Print udzbenik. hr
Sys. Print udzbenik. hr Informatika 7 3 • Složeni program rastavljamo na jednostavnije probleme koje zovemo potprogrami. Potprograme pozivamo u glavnom programu ili u drugom potprogramu. • I do sada ste u Logu pisali potprograme te ih koristili u drugim potprogramima ili glavnom programu.
Sys. Print udzbenik. hr Vježba 7. Pogodi broj Informatika 7 • Računalo je zamislilo neki broj od 1 do 100. Napiši program POGODI u kojem ćeš pogoditi broj koji je računalo zamislilo. Treba prebrojiti u koliko je pokušaja broj pogođen. • Primjer igre: 4
Sys. Print udzbenik. hr Informatika 7 5 Naredba za upis podataka • MAKE "A RW – otvara dijaloški okvir kao na slici i u varijablu A upisuje se podatak upisan tipkovnicom. Možete upisivati, slova, brojeve, posebne znakove, čak i tekst u više redova (tipkom Enter prelazi se u sljedeći red) sve dok se ne klikne OK.
Sys. Print udzbenik. hr Informatika 7 6 Algoritam: x = slučajan (1, 100) ulaz(moj) br = 1 sve dok moj ≠ x: ako je moj > x: izlaz(moj je veći) ako je moj < x: izlaz(moj je manji) br = br + 1 izlaz(Bravo! Zamislio sam x) izlaz(br)
Sys. Print udzbenik. hr Rješenje: Informatika 7 TO POGODI MAKE "X 1+ RANDOM 100 MAKE "MOJ RW MAKE "BR 1 WHILE [: MOJ<>: X][ PROVJERI : MOJ : X MAKE "MOJ RW ] PR SE "|BRAVO! ZAMISLIO SAM| : X PR (SE "|POGODJENO U| : BR "POKUSAJA. ) END 7 TO PROVJERI : MOJ : X TEST : MOJ<: X IFT [PR SE : MOJ "|JE MANJI. |] TEST : MOJ>: X IFT [PR SE : MOJ "|JE VECI. | ] MAKE "BR : BR + 1 END
Sys. Print udzbenik. hr Informatika 7 Vježba 8. • Nacrtajte niz od 20 kvadrata duljine stranice 20. Program će nasumično obojiti jedan kvadrat žutom bojom. Vaš je zadatak da kvadrat ispred i iza žutog kvadrata obojite crvenom bojom. • Primjeri: • Računalo je žutom bojom obojilo 14. kvadrat. Vi trebate obojiti 13. i 15. kvadrat • Računalo je žutom bojom obojilo 1. kvadrat. Vi trebate obojiti samo 2. kvadrat. • Računalo je žutom bojom obojilo 20. kvadrat. Vi trebate obojiti samo 19. kvadrat. 8
Sys. Print udzbenik. hr Informatika 7 9 • Zadani problem podijelit ćete na potprograme. Prikažimo ih grafički.
Sys. Print udzbenik. hr Rješenje: Informatika 7 • Najprije ćete nacrtati niz od 20 kvadrata duljine stranice 20. 10 TO KVADRAT : A REPEAT 4 [FD : A RT 90] END TO NIZ. KVADRATA PU LT 90 FD 400 RT 90 PD REPEAT 20 [KVADRAT 20 RT 90 FD 20 LT 90] PU LT 90 FD 400 RT 90 PD END
Sys. Print udzbenik. hr Rješenje: Informatika 7 Program OBOJI : K : BOJA koji K-ti kvadrat boji bojom BOJA. 11 TO OBOJI PU RT 90 RT 45 FD PU BK 10 PU LT 90 END : K FD 10 LT FD : BOJA (: K-1)*20 LT 90 PD SETFC : BOJA FILL 45 PD (: K-1)*20 RT 90 PD
Sys. Print udzbenik. hr Rješenje: Informatika 7 Program ZADAJ zamišlja nasumični broj od 1 do 20, sprema ga u varijablu X i boji X-ti kvadrat žutom bojom. 12 TO ZADAJ MAKE "X 1+RANDOM 20 OBOJI : X 6 END
Sys. Print udzbenik. hr Rješenje: Informatika 7 Glavni program CRVENI. KVADRAT: 13 TO CRVENI. KVADRAT NIZ. KVADRATA ZADAJ WAIT 90 MAKE "K : X TEST : K>1 IFT [OBOJI : K-1 4] TEST : K<20 IFT [OBOJI : K+1 4] END
Sys. Print udzbenik. hr Informatika 7 14 Vježba 9. • Napišite program za igru pogađanja riječi. Na početku programa treba ponuditi • izbornik: Želiš li: 1) upisati novu riječ za pogađanje 2) igrati igru pogađanja slova 3) izlaz.
15 Informatika 7 Sys. Print udzbenik. hr Dijagram toka:
Sys. Print udzbenik. hr Informatika 7 16 Glavni program IGRA: Rješenje: TO IGRA PR "|ŽELIŠ LI: | PR "|1) UPISATI NOVU RIJEČ ZA POGAÐANJE| PR "|2) IGRATI IGRU POGAÐANJA SLOVA| PR "|3) IZLAZ| MAKE "IZBOR RW TEST : IZBOR=1 IFT [PR "|UPIŠI NOVU RIJEČ ZA IGRU: | MAKE "UPIS RW MAKE "POPIS LPUT : UPIS : POPIS] TEST : IZBOR=2 IFT [ZADAJ] TEST : IZBOR=3 IFT [PR "|KRAJ| STOP] TEST (AND : IZBOR<>1 : IZBOR<>2 : IZBOR<>3) IFT [PR "|UPIŠI 1, 2 ILI 3!|] IGRA END
Sys. Print udzbenik. hr Rješenje: Informatika 7 Potprogram ZADAJ zadaje riječ koju treba pogoditi: 17 TO ZADAJ MAKE "RIJEC PICK : POPIS MAKE "POGODI : RIJEC MAKE "BROJ COUNT : RIJEC MAKE "NOVA " FOR [K 1 : BROJ] [MAKE "NOVA WORD : NOVA "|-|] PR : NOVA PROVJERI. SLOVO END
Sys. Print udzbenik. hr Rješenje: Informatika 7 Potprogram PROVJERI. SLOVO omogućuje upis slova koje se trenutno pogađa. 18 TO PROVJERI. SLOVO TEST : POGODI=" IFT [ PR "POGOÐENO!! PR " IGRA] MAKE "SLOVO RW TEST MEMBER? : SLOVO : POGODI IFT [MAKE "POGODI REMOVE : SLOVO : POGODI DODAJ : SLOVO ] IFF [PR (SE "|SLOVO| : SLOVO "|NIJE U RIJEČI. |)] PROVJERI. SLOVO END
Sys. Print udzbenik. hr Rješenje: Informatika 7 Potprogram DODAJ dodaje pogođeno slovo SLOVO u riječ koja se nalazi u varijabli NOVA. 19 TO DODAJ : SLOVO MAKE "POMOCNA " FOR [K 1 : BROJ] [TEST (ITEM : K : RIJEC)= : SLOVO IFT [MAKE "POMOCNA WORD : POMOCNA : SLOVO] IFF [MAKE "POMOCNA WORD : POMOCNA (ITEM : K : NOVA)]] MAKE "NOVA : POMOCNA PR : NOVA END
- Slides: 19