Čtvrtek 28. února
Comenius Logo je objektově orientovaný programovací nástroj pracující v prostředí Windows. Byl vyvinut na Slovensku jako nástroj k výuce programování na základních školách. Rozvíjí tvořivost a schopnost řešení problémů. Výsledkem práce mohou být například výukové aplikace nebo hry. Nevýhodou je, že vše co v CL vytvoříte, v něm musíte i spouštět, protože překladač CL pracuje jako interpret.
Princip programování CL pracuje ve dvou, současně fungujících, režimech - v textovém a grafickém. V grafické části pracovní plochy je umístěna želva, která vykonává instrukce zadávané z textového pole. Podle nich pak může například vykreslit jednoduché geometrické obrazce (trojúhelník, čtverec). Kreslené útvary mohou vypadat všelijak, neboť to, co želva nakreslí, záleží jen na nás. Můžeme modifikovat tvar stopy (barvu, šířku, vzor), který za sebou zanechá, měnit její vzhled nebo ji skrýt. Tento přístup k práci se proto nazývá "želví grafika". CL má kolem 250 předefinovaných příkazů v různých kategoriích. Abychom se neupsali zadáváním opakujících se instrukcí, můžeme samozřejmě tvořit další, složitější, tzv. definované procedury (právě to učí základům programování). Nebyl by to tak mocný nástroj, kdybychom mohli pracovat jen s jedním objektem (želvou). Po ploše obrazovky se v jednom okamžiku může pohybovat několik želv a tak mohou v CL vznikat zajímavé interaktivní aplikace.
Prostředí Comenius Logo Želva se nachází v tzv. grafickém okně (zviditelníme ji klávesou +), v němž jsou vidět i čáry, které nakreslila. Příkazy, které má želva vykonat, se zapisují z klávesnice na příkazový řádek vlevo dole v okně. Do jednoho řádku lze psát více příkazů oddělených mezerou. Příkazy se vykonají po stisknutí klávesy Enter. Mezi grafickým oknem a příkazovým řádkem se nachází textové okno, kde jsou zaznamenány použité příkazy. V příkazovém řádku lze vybírat i šipkami „nahoru“ a „dolů“ příkazy, které jsme želvě zadali v minulosti.
nabídka příkazů zobrazení okna paměti
želva
Grafická plocha
Textová plocha
Logo – základní příkazy Akce
Příkaz
Popis příkazu
forward
Zkratka, parametr fd číslo
lez dopředu lez dozadu
back
bk číslo
želva postoupí vzad o počet pixelů daný číslem
otoč vlevo
left
lt číslo
želva se otočí o daný počet stupňů proti směru
želva postoupí vpřed o počet pixelů daný číslem
hodinových ručiček
otoč vpravo
right
rt číslo
želva se otočí o daný počet stupňů po směru hodinových ručiček
smaž
clearscreen cs
obrazovku
nastav barvu
setpencolor
setpc číslo
nastav sílu čáry
setpenwidth
setpw číslo
smaže obrazovku a umístí želvu do výchozí hodinových polohy želva změní barvu stopy hodinových želva změní tloušťku stopy
Vytvoření nové procedury
Do příkazového řádku pak píšeme pouze ctverec a želva nakreslí čtverec
Proměnné Proměnnou v Comenius Logu píšeme tak, že před jméno proměnné napíšeme dvojtečku Př. to ctverec :d repeat 4 [fd :d left 90] end
Do příkazového řádku pak napíšeme ctverec a za něj hodnoty parametrů ctverec 100
Čtvrtek 7. března Procedura n_uhelnik sestrojí pravidelný mnohoúhelník o zvolené délce strany to n_uhelnik :n :s repeat :n [fd :s rt 360/:n] end
Procedura může obsahovat více proměnných. Proměnná nemusí být pouze písmenko, ale může to být i slovo, které vyjadřuje vlastnost, kterou proměnná zastupuje to n_uhelnik :n :d :barva :t setpencolor :barva setpenwidth :t repeat :n [fd :d rt 360 / :n] end
//barva pera //šířka pera
Trojúhelník postavený na špičku to trojuhelnik :a lt 30 repeat 3 [fd :a rt 120] end
Vybarvit trojúhelník to trojuhelnik :d :b :vypln lt 30 setpencolor :b repeat 3 [fd :d rt 120] pu rt 30 fd 30 setfillcolor :vypln fill bk 30 lt 30 pd end
// pu – pero nahoru // fill - vyplň // pd – pero nahoru
Čtvrtek 7. března Proceduru trojúhelník použijeme na vytvoření procedury kriz
to kriz :d :b :vypln repeat 4 [trojuhelnik :d :b :vypln lt 60] end
Čtvrtek 21. března Odvození procedury kružnice to kruznice repeat 360 [fd 1 rt 1] end
Kružnice různé velikosti to kruznice :d repeat 360 [fd :d rt 1] end
Sestrojení procedury spirála to spirala :d repeat 180 [fd :d rt 1] spirala :d - 0.1 end
Procedura spirála používá techniku rekurze - jedna a tatáž funkce volá před svým dokončením sama sebe s použitím nové sady parametrů. Tato procedura je musí ručně zastavit nebo je nutné použít podmínku. Spirála s měnící se tloušťkou čáry to spirala :d :t if :d > 7 [stop] setpenwidth :t repeat 120 [fd :d rt 1] spirala :d + 0.1 :t + 0.1 end
Vytvoření procedury sluníčko to slunicko :d :n repeat :n [trojuhelnik :d fd :d wait 1500 lt 360 / :n] end