Sys Print udzbenik hr Otvorite datoteku 65 Avje
Sys. Print udzbenik. hr • Otvorite datoteku 65 Avje 1. lgo koju ste spremili prošli sat. • Upišite u naredbeni redak: KOCKA -1 50 4 Informatika 6 • Kocka se nije nacrtala, već je Logo "odgovorio": REPEAT NE VOLI -1 ZA ULAZNU VRIJEDNOST IN KVADRATI [REPEAT : N [NIZ_KVADRATA : N : A FD : A]] • Zašto? • Zadali smo da treba nacrtati -1 kocku! Ulazna vrijednost N mora biti veća od 0. 1
Sys. Print udzbenik. hr Informatika 6 2 • Ulazna vrijednost N mora biti veća od 0. • Kako to učiniti? • Logo mora ODLUČITI može li sa zadanom ulaznom vrijednosti N nacrtati kocku PRIJE crtanja…. ako je N>0 onda KOCKA : N : A : BOJA inače izlaz(N mora biti veći od 0)
Sys. Print udzbenik. hr Informatika 6 5. A. Programski jezik Logo Odluke u programu
Sys. Print udzbenik. hr Informatika 6 • Grafički, u dijagramu tijeka naredbu odluke prikazujemo u rombu 4
Sys. Print udzbenik. hr Informatika 6 Naredba odluke u Logu: TO CRTAJ_KOCKU : N : A : BOJA TEST : N>0 IFTRUE[KOCKA : N : A : BOJA] IFFALSE[PR "|ZADAJ BROJ MALIH KOCAKA N>0|] END provjeri uvjet koje treba izvršiti za za N NIJE ako jenaredbe istina naredbe koje treba izvršiti N>0 veći od 0 ako je laž 5
Sys. Print udzbenik. hr Oblik naredbe odluke: TEST logički uvjet Informatika 6 IFT [ IFTRUE 6 Mali engleski rječnik: if – ako true – istina false - laž naredbe koje se izvršavaju ako je uvjet istinit IFF [ IFFALSE naredbe koje se izvršavaju ako je uvjet lažan ] ]
Sys. Print udzbenik. hr Možemo li sada nacrtati svaku kocku? CS CRTAJ_KOCKU 2. 5 40 6 Informatika 6 Neće se nacrtati kocka jer N nije cijeli broj veći od 1. Ne mogu se nacrtati dvije i pol male kocke na svakom bridu. CS CRTAJ_KOCKU 3 40. 5 6 Nacrtat će se velika kocka sastavljena od malih kocaka kojima je duljina brida 40. 5. CS CRTAJ_KOCKU 2 40 6. 5 Logo će javiti pogrešku jer broj boje mora biti prirodni broj ili 0. 7
Sys. Print udzbenik. hr Informatika 6 8 Naredba za ispis • • • • PR 2+2 4 PR 13 -5 8 PR 13 -(7+2) 4 PR 4*5 20 PR 12/3 4 PR REMAINDER 14 3 2 PR [DOBAR DAN!] DOBAR DAN! PR (PRINT) naredba za ispis u naredbenom prozoru. Računske operacije u Logu: znak u Logu računska operacija zbrajanje + oduzimanje - množenje * dijeljenje / ostatak pri dijeljenju REMAINDER
Sys. Print udzbenik. hr Informatika 6 9 Naredba odluke u Logu • • PR 3<5 TRUE PR 4>9 FALSE PR 3+8=15 FALSE PR 3+8=11 TRUE Logički operatori u Logu Matematika LOGO < < > > = = <> <= >=
Sys. Print udzbenik. hr Informatika 6 INT : BROJ – vraća BROJ bez decimalnih mjesta ROUND : BROJ – zaokružuje BROJ na najbliži cijeli broj 10
Sys. Print udzbenik. hr Informatika 6 ALGORITAM 11 ako je N>0 onda ako je BOJA < 0 onda BOJA = slučajan(16) KOCKA : N : A BOJA inače izlaz(N mora biti veći od 0. ) DIJAGRAM TIJEKA
Sys. Print udzbenik. hr Informatika 6 12 Program: TO CRTAJ_KOCKU : N : A : BOJA MAKE "N ROUND : N MAKE "BOJA ROUND : BOJA TEST : N>1 IFT[IF : BOJA<0 [MAKE "BOJA RANDOM 16] KOCKA : N : A : BOJA] IFF [PR "|ZADAJ BROJ MALIH KOCAKA N>0. |] END
Sys. Print udzbenik. hr Vježba 3. Informatika 6 • Napišite program JEDNAKI : A : B koji će provjeriti jesu li dva broja A i B jednaka ili nisu. 13
Sys. Print udzbenik. hr ALGORITAM Informatika 6 ulaz(a, b) ako je a=b onda izlaz(Brojevi su jednaki) inače izlaz(Brojevi su različiti) 14 DIJAGRAM TIJEKA
Sys. Print udzbenik. hr Informatika 6 15 Program: TO JEDNAKI : A : B TEST : A=: B IFTRUE [PR "|BROJEVI SU JEDNAKI|] IFFALSE [PR "|BROJEVI SU RAZLIČITI|] END
Sys. Print udzbenik. hr Vježba 4. Informatika 6 • Napišite program USPOREDI : A : B koji uspoređuje dva broja A i B. 16
Sys. Print udzbenik. hr Informatika 6 ALGORITAM 17 ulaz(a, b) ako je a>b onda izlaz(a > b) inače ako je a<b onda izlaz(a < b) inače izlaz(a = b) DIJAGRAM TIJEKA
Sys. Print udzbenik. hr Informatika 6 18 Program: TO USPOREDI : A : B TEST : A>: B IFT [PR (SE : A "> : B)] IFF [TEST : A<: B IFT [PR (SE : A "< : B)] IFF [PR (SE : A "= : B)]] END
Sys. Print udzbenik. hr Vježba 5. Informatika 6 • Napišite program VODORAVNO : A : B koji crta pravokutnik tako da mu je dulja stranica uvijek vodoravno, a kraća okomito. 19
Sys. Print udzbenik. hr Program: Informatika 6 TO PRAVOKUTNIK : A : B REPEAT 2 [FD : B RT 90 FD : A RT 90] END 20 TO VODORAVNO : A : B TEST : A>: B IFT [PRAVOKUTNIK : A : B] IFF [PRAVOKUTNIK : B : A] END
Sys. Print udzbenik. hr Informatika 6 21 Vježba 6. • Na početku sata tjelesne i zdravstvene kulture učenici trebaju stati „u vrstu“ po visini. Tri najbolja prijatelja Matej, Ivan i Luka, među najvišim učenicima u razredu, svaki sat se prepiru tko će stati prvi u red. Napišite program koji će ispisati ime učenika koji treba stati prvi u redu, ako su ulazne vrijednosti programa PRVI : M : I : L njihove visine koje su izmjerili danas ujutro. PRVI PRVI 150 151 U REDU: 153 154 U REDU: 152 LUKA 152 MATEJ 152 IVAN
Sys. Print udzbenik. hr Informatika 6 ALGORITAM NAJ = M ako je I > NAJ onda NAJ = I ako je L > NAJ onda NAJ = L ako je NAJ = M onda izlaz(MATEJ) ako je NAJ = I onda izlaz(IVAN) ako je NAJ = L onda izlaz(LUKA) Nacrtaj dijagram tijeka. 22 PROGRAM TO PRVI : M : I : L MAKE "NAJ : M TEST : I > : NAJ IFT[MAKE "NAJ : I] TEST : L > : NAJ IFT[MAKE "NAJ : L] TEST : NAJ = : M IFT[PR "|PRVI U REDU: MATEJ|] TEST : NAJ = : I IFT[PR "|PRVI U REDU: IVAN|] TEST : NAJ = : L IFT[PR "|PRVI U REDU: LUKA|] END
Sys. Print udzbenik. hr Informatika 6 TKO ŽELI ZNATI VIŠE DODATNI PRIMJERI 23
Sys. Print udzbenik. hr Informatika 6 24 Problem 1. • Napiši program koji crta niz od N kvadrata duljine stranice A. Prije početka crtanja kornjaču pomaknemo uz lijevi rub grafičkog prozora. Niz kvadrata crta se samo ako čitav stane u grafički prozor. Ako je N*A>600, treba ispisati poruku "Niz kvadrata ne stane u grafički prozor. ", a inače nacrtati niz kvadrata.
Sys. Print udzbenik. hr Rješenje: Informatika 6 TO CRTAJ. NIZ : N : A PU LT 90 FD 300 RT 90 PD TEST : N*: A>600 IFT[PR [NIZ KVADRATA NE STANE U GRAFIČKI PROZOR. ]] IFF [NIZ. KVADRATA : N : A] END TO KVADRAT : A REPEAT 4 [FD : A RT 90] END TO NIZ. KVADRATA : N : A REPEAT : N [KVADRAT : A RT 90 FD : A LT 90] END 25
Sys. Print udzbenik. hr Problem 2. Informatika 6 • Program treba nacrtati lik s N vrhova stranice duljine A, ako je broj vrhova N veći od 2, a inače ispisati poruku "Lik ima barem 3 vrha. " 26
Sys. Print udzbenik. hr Rješenje: Informatika 6 TO LIK : N : A TEST : N>2 IFT [REPEAT : N[FD : A RT 360/: N]] IFF [PR [Lik ima barem 3 vrha. ]] END 27
- Slides: 27