17
Amel Habibović –Primjena programskog jezika Logo u nastavi Univerzitet u Tuzli Filozofski fakultet Odsijek: Tehnički odgoj i informatika Predmet: Metodika nastave informatike SEMINARSKI RAD Tema: Primjena programskog jezika Logo u nastavi 1

Šta je logo

Embed Size (px)

DESCRIPTION

programski jezik logo.

Citation preview

Amel Habibovi Primjena programskog jezika Logo u nastavi

Amel Habibovi Primjena programskog jezika Logo u nastavi

Univerzitet u Tuzli

Filozofski fakultet

Odsijek: Tehniki odgoj i informatika

Predmet: Metodika nastave informatike

SEMINARSKI RAD

Tema: Primjena programskog jezika Logo u nastavi

Tuzla, Mart 2014

Predmetni profesor: Ime i prezime:

Dr.Damir Demirovi.doc.

Sadraj: 21.Osnovni pojmovi

22.Zato uimo programirati ?

33.ta je logo ?!

34.Historija progrmaskog jezika Logo

45.Uporedba logo jezika sa ostalim programskim jezicima

46.Oznaka i pokretanje Logo-a

67. Kornjaina grafika

67.1 Okretanje kornjae

78. Crtanje kvadrata

89. Crtanje trougla

910.Brisanje

911.Crtanje krunice

1012. Boje

1113. Primjeri crtanja sa kornjaom

1214. Zakljuak

1.Osnovni pojmovi Programiranje : predstavlja nam postupak stvaranja programa.

Programski jezik : predstavlja skup svih instrukcija (naredbi) i pravila po kojima se ona izvode.

Program : Predstavlja skup logiko(smisleno) povezanih naredbi koje su namijenjene za izvoenje razliitih operacija odnosno rjeavanje zadataka.

Naredba: predstavlja kljunu rije programskog jezika odreene namijene,a najee za izvravanje manjeg zadatka (kao npr pomakni, okreni itd) ili izvoenje manje operacije.

2.Zato uimo programirati ?Prije svega programiranjem razvijamo logiko miljenje i zakljuivanje , samim tim lake prepoznajemo probleme i iznalazimo rjeenje za postavljenje zadatke. Zatim imaju ulogu u gotovo svim ljudskim aktivnostima i praktino danas bi bilo ne zamislivo normalno funkcionisanje bez programiranja.

3.ta je logo ?!Logo je programski jezik ije ime nam dolazi od grke rijei (logos=rije). Vano je napomenuti da se on razvio iz drugog jezika Lispa,kreiranog 1967 godine za upotrebu u nastavi, a koji se koristi i za najnaprednija istraivanja u raunalskim znanostima, posebno u istraivanjima umjetne inteligencije. Prethodni programski jezici bavili su se najvie aritmetikim proraunima i to im je bila osnovna funkcija. Za razliku od prethodnih logo je izraen kao alat za manipulaciju jezikom I najbolju svrhu imao je pri obradu rijei I reenica. Vano je napomenuti da se ovaj jezik izuava po samoj kompleksnosti, odnosno postoji vie razina za njegovo izuavanje poevi od predkolskog odgoja pa sve do akademskih institucija. Iako je u poetku predstavljao veoma vaan i smaan alat, medjutim njegova upotreba u predkolskim i niim kolskim ustanovama mu je oborila slavu. Te se nakon toga ovaj program smatra kao odlian za iscrtavanje poligona kao i uenje koritenja i primjene raunara za mlade generacije. Tome je najvie doprinijelo visok nivo razvijenosti grafike, te sama jednostavnost te raficke procedure da sasvim lagano to mogu I djeca koristiti. Historija programskog jezika LOGO

4.Historija progrmaskog jezika LogoGrupa predvoena Wallaceom Feurzeigom 1967. godine MIT Artificial Intelligence Laboratory, stvorila je prvi Logo .U radu i razvoju sudjelovao je i matematiar Seymour Papert. Logo, kao dijalekt Lisp-a, stvoren je kao alat za uenje. Osnovne karakteristike ovog programskog jezika su : modularnost, proirivost, interaktivnost i fleksibilnost.

Sedamdesetih godina zapoeo je nagli razvoj Logo-a , sa razvojem osobnih raunara. Tada je razvijen i Logo za Apple II , Texas Instruments TI 99/4 a ve osamdesetih godina su otvorene i prve uionice u Dallasu i New Yorku s tim raunarima. Nakon toga daljim prouavanjem dolaze4 do stvaranja komercijanih produkata kao to su TILogo . Vrijedno pomena jeste da se 1977 godine , kompanija Terrapin Software zapoinje distribucija robotskih Logo kornjaa. A nakon toga 1980 godine formirana je Logo Computer Systems, Inc (LCSI) . Kasnije se javljaju razne verzije na mnogim platformama , te je Logo za MSX raunala bio popularan u Evropi , Junoj Americi i Japanu. Atari Logo i Commodore Logo u Sjevernoj Americi.

1985. godine pojavio se LogoWriter sa novougraenim text-procesorskim mogunostima (obrada teksta) i ve prije vienim (IBM i Apple) viestrukim kornjaama koje su mogle imati razne oblike.Meutim Logo biva potisnut novim i modrenim edukacijiskim softverima zbog toga to se znatno sporije razvijao od tih novijih sotwera te nije mogao da bude u koraku sa njima. Nakon toga teilo se iznai neko rjeenje pa da ponovno bude dominantan i da se moe nositi sa ostalim softwerima. Do velikog koraka se doslo 1993 godine kada u Americi nastaje Micro Worlds (LCSI) za Macintosh (razvija se i verzija za PC DOS) koji dodaje znaajne promjene. Najznaajnije su promjene u viezadanosti i paralelnoj obradi podataka. Mitchel Resnick iz MIT-a razvija StarLogo ; odnosno masivnu paralelnu verziju Logo-a. Sada istovremeno i interaktivno moe da radi vie kornjaa. I nastaju razne verzije Logo-a, meu kojima i UCB Logo Briana Harweya za Unix,Macintosh, MSDOS i Windows.

5.Uporedba logo jezika sa ostalim programskim jezicimaSvaki programski jezik na neki nain moe uspjeno posluiti i zavriti traeni posao. Ovdje se neemo puno zadravati na ovoj temi, ali emo kao primjer navesti nain spremanja u memoriju.Ako elimo u neki programski jezik spremiti neke podatke npr brojeve ili neto to smo deklarisali, to ne smiju nikako biti mijeani znakovi, brojevi , stringovi i slino. U Logu je itav proces spremanja u memoriju automatski , pri tome ne moramo unaprijed definirati koliinu podataka i njihov tip. A ako naknadno elimo dodati koji tip podatka, to se moe i bez nae brige o potrebnom prostoru u memoriji.Ona se dakle dodjeljuje automatski. Na ovom primjeru vidimo prednost Loga nad Fortranolikim jezicima. Dakle openito Fortran i njegovi srodnici nastali su prije nego je bila dobro poznata matematika osnova raunalnog programiranja. A Lispoliki jezici, kao Logo, upotrebljuju moderne naine i spoznaje u programiranju poput kompozicije funkcija (nizanje funkcija koje jedna drugoj predaju podatke). Jedna od najaih karakteristika Loga jest rekurzija i rekurzivno programiranje. Takoer ovu karakteristiku imaju i neki drugi moderni programski jezici, kao to je npr Scheme.

6.Oznaka i pokretanje Logo-a

U Logu je mogue crtati ali umjesto mia i kista , raunaru zadajemo naredbe za crtanje, a kao pokaziva mia slui nam kornjaa. Pored dakle crtanja , kao to smo ve u uvodnom dijelu rekli u logu se mogu izraivati i vrlo sloeni programi.Simbol odnosno ikona Logo-a je prikazana na sljedeoj slici :

Slika 1: Ikona programskog jezika LogoA da bi pokrenuli program FMS Logo potrebno je pratiti sljedei redoslijed :

kliknite na glavni izbornik Start Svi programi (Programs) FMSLogo FMSLogo. Nakon to pokrenemo program na ekraju dobivamo sljedei prikaz :

Slika 2 : prikaz Logo-vog editor sa oznakamaKao to smo ve naveli u uvodu, Logo koristi kornjau kao pokaziva, u obliku trokuta gdje nam vrh trokuta predstavlja smjer kretanja odnosno crtanja. Sam nain zadavanja naredbi kornjai je veoma jednostavan, samo se naredbe upisuju u editor za naredbe. Program poinje sa naredbom TO ime a zavrava sa END , npr

TO KVADRAT

...

END

Razliiti programi moraju imati razliita imena, uz napomenu da se ne smiju koristiti naa slova kao npr : , , , ... kao ni specijalni karakteri : #, %, $, !..

Svaka naredba se izvrava pritiskom tipke Enter ili tako to kliknemo na gumb Execute. Naravno kao rezultat svaku izvrenu naredbu vidimo u okviru popisa izvrenih naredbi.Neke osnovne naredbe su :

FD (FORWARD) naredba kojom kornjau pomiemo naprijed zadani broj koraka (Npr. FD 200). BK (BACK) naredba kojom kornjau pomiemo nazad zadani broj koraka (Npr. BK 200). RT (RIGHT) naredba za okret kornjae udesno za odreeni broj stupnjeva (Npr. RT 90). LT (LEFT) naredba za okret kornjae ulijevo za odreeni broj stupnjeva (Npr. LT 90). CS(CLEARSCREEN)-brie ekran i postavlja kornjau u sredini7. Kornjaina grafikaKao to smo vidjeli na prethodnoj slici, kao kursor se koristi kornjaa koja ima 3 atributa :

1. Poziciju

2. Orijentaciju

3. Pisaljku , koja ima svoje atribute : boju, debljinu, i spusti/podigni

Jasno se vidi kako je kornjaa okrenuta i u kom smjeru gleda, i esto se koristi analogija kao da je kornjai za rep zakaena pisaljka, i kako se ona pomijera, tako za sobom iscrtava liniju. Koranjaa se vizualizira nekad kao kornjaa ali najee kao trokuti. 7.1 Okretanje kornjae Takoer i okretanje kornjae se vri na isti nain, samo to brojanu vrijednost odvajamo sa razmakom od tekstualnog dijela naredbe. Brojana vrijednost okreta moe biti od 1(min) do 360(max), naravno vrijednost 360 vraa kornjau u poetni poloaj jer je to vrijednost punog kruga.

Slika 3: Prikaz kretanja i okretanja kornjaeNaravno ovdje sve je zasnovano na istoj logici, (zbog toga su ga smatrali dosta djetinjastim i pre jednsotavnim programom) . Tako ispravljanje pogrenog okreta se vri sa kontra naredbom. Npr naredba RT 45 e ponititi ili bolje reeno ispraviti okret LT 45.

Naredbe :

PU podie pero ili brisalo kako bi kornjau pomakli bez pisanja ili brisanja PD sputa pero ili brisalo PE okree pero na stranu brisala. Koristi se za brisanje pojedinanih crta. PPT suprotna naredba naredbi PE. Omoguuje pisanje ako je prethodno bilo ukljueno brisanje (PE). CS brie kompletan (cijeli) sadraj grafikog prozora HOME pomie kornjau na poetnu poziciju. Ako kornjaa ima sputeno pero ostat e trag (crta). Ako ne elite ostaviti trag pomicanjem kornjae na poetnu poziciju prije primjene ove naredbe podignite pero. HT sakrij kornjau ST pokai kornjau REPEAT 3 [FD 100 LEFT 90] ponovi naredbe u zagradama triputU daljem tekstu pokazat emo neke jednostavnije primjere iscrtavanja geometrijiskih likova, koje djeca veoma lahko savladaju u ranim fazama osnovnog kolovanja.8. Crtanje kvadrataPrvo pomijeranje kornjae za duinu stranice 100 koraka unaprijed vrimo naredbom FD 100, zatim u drugom koraku kornjau okreemo za 90 koraka u desnu stranu naredbom RT 90. Dalje iscrtavanje se radi na isti nain, nakon 100 koraka naprijed ponovo zakreemo kornjau, sve dok ne dodjemo u poetnu taku. Zakretanje kornjae ulijevo ili udesno se izraava stepenima, a ugao od 90 stepeni, kao to je poznato nazivamo pravim uglom. Dakle za iscrtavanje kvadrata napravili smo 4 pomaka po 100 koraka i 4 okreta od 90 stepeni odnosno ukupno 360 stepeni (90+90+90+90) i doli na poetno mjesto. Postupak crtanja kvadrata sa koracima je prikazan na sljedeoj slici :

Slika 4: Primjer crtanja kvadrata9. Crtanje trouglaKod crtanja trougla najvei problem predstavlja odreivanje uglova za koje se zakree kornjaa. Na slici je prikazan jedakostranini trougao sa koracima i uglovima, kao i nainom prorauna potrebnih uglova.

Slika 5: Primjer crtanja trougla sa naredbama za iscrtavanjeOdreivanje nekih uglova za pravilan geometrijiski lik :

Za kvadrat: 360/4 = 90, Za trougao: 360/3 = 120, Za esterougao: 360/6 = 60. Za osmerougao: 360/8 = 45. Za deseterougao: 360/10 = 36. Za dvanaesterougao: 360/12 = 30.10.BrisanjeNa isti nain kako smo crtali , tako se i brie. Sa naredbom PE=PENERASE, kornjaa e umjesto da pie brisati pojedinane linije. Takve naredbe za brisanje su nam prikazane na sljedeem primjeru :

PE

RT30

FD100

RT120

FD100

RT120

FD100

RT120

LT30

PPT

( sa ovom naredbom smo izbrisali iscrtani trokut iz prethodnog primjera , gdje smo svaku liniju pojedinano brisali, ako emo se ponovo koristiti analogijom repa kornjae, ovo brisanje bi mogli zamisliti kao da smo na rep kornjae zavezali gumicu koja brie , kako se kornjaa pomijera. )

11.Crtanje kruniceKrunicu moemo nacrtati takoer pomou, ovih naredbi koje smo predthodno objasnili, tako to emo postaviti naredbu da iscrtava malu duinu linije (jer to mnogokut ima vie strana to je sliniji krunici), pa postavimo da lomi liniju 360 puta za 360 stepeni i na taj nai dobivamo krunicu.Pravilni n-terokuti nastaju (primjerice) naredbom tipa REPEAT n [FD a RT kut], gdje je n puta kut jednako 360.

Slika 6: Primjer crtanja kruznih oblika sa kornjaom

12. BojeBoje u Logo-u deklariemo na isti nain kao i u drugim programskih jezicima , odnosno dodjeljivanjem brojane vrijednosti za tri osnovne boje RGB (Red, Green, Blue).

1. SETPENCOLOR = SETPC: postavlja boju kornjae (0,,15)2. SETSCREEN COLOR: postavlja boju pozadine (0, 1, , 15)3. SETFLOODCOLOR boja popunjenja za FILL4. FILL: kornjaa u boji 1 ispuni dio u kojem se nalazi (ako je ograena zatvorenom krivuljom, inae oboji vei dio zaslona; ako je na liniji, naredba nema efekta)Ostale boje emo navesti njihovim RGB-kodom: Oznaka boje [R G B]

0[0 0 0]

1[0 0 255]

2[0 255 0]

3[0 255 255]

4[255 0 0]

5[255 0 255]

6[255 255 0]

7[255 255 255]

8[155 96 59]

9[197 136 18]

10[100 162 64]

11[120 187 187]

12[255 149 119]

13[144 113 208]

14[255 163 0]

15[183 183 183]

Slika 7: Prikaz boja sa njihovom brojanom vrijednosti13. Primjeri crtanja sa kornjaom

Na kraju emo jos navesti par primjera, crtea kojima djeca trebaju da ovladaju i budu u mogunosti da nacrtaju jos u toku osnovnog kolovanja.

14. Zakljuak Kroz ovaj seminarski rad obradili smo Logo programski jezik, koji je pored ostalih alata koje posjeduje, dakle moe da se koristi u svrhe kao i ostali moderni programi, ipak svoju najveu primjenu i upotrebu naao u kolama pri izvoenju nastave i edukovanju mladih. Najpogodniji je za crtanje, te zbog toga mnogi su ga upoznali samo sa te strane, kroz graficki svijet , tako da mnogi i ne znaju da on moe da izvrava i ostale operacije kao i drugi programski jezici. Veliki pad je doivio iz razloga to se smatrao isuvie jednostavnim, te su ga zbog toga smatrali djeijim igrama. Medjutim ovaj programski jezik sadri mnoge prednosti, koje smo ve naveli u toku ovog rada, gdje smo ga poredili sa ostalim programskim jezicima, a pored toga dakle krasi ga jednostavnost .Programski jezik Logozajedno sa Pascal-om i C-om, spada u najdominantiji programski jezik u osnovim obrazovnim institucijama.15.Literatura

1. http://os-supetar.skole.hr/predmeti/informatika?news_id=1202. http://os-supetar.skole.hr/predmeti/informatika3. http://hr.wikipedia.org/wiki/Logo_(programski_jezik)4. http://el.media.mit.edu/logofoundation/logo/programming.html5. http://logo.dir.hr/sto_je_logo.htm Po knjizi Fredija Glavana

2