Hlavní navigace

Seriál Letní škola programovacího jazyka Logo

Programovací jazyk Logo - dokončení seriálu

V závěrečné části seriálu o programovacím jazyce Logo dokončíme téma trojrozměrné grafiky popisem použití vyplněných polygonů a jednoduchého osvětlovacího modelu při tvorbě prostorových objektů. Dále bude uveden soupis literatury a většiny příkazů Loga, se kterými jsme se v průběhu tohoto seriálu seznámili.

Pavel Tišnovský

6. 11. 2007 0:00
| 4

Tvorba 3D grafiky v Logu

V předposlední části seriálu dokončíme problematiku animací a posléze se budeme zabývat tvorbou 3D grafiky, kterou je možné přímo vytvářet například v MSW Logu či aUCB Logu. Pokud se však spokojíme pouze s drátovými modely, lze prostorovou grafiku vytvářet v prakticky všech běžných implementacích Loga.

Pavel Tišnovský

30. 10. 2007 0:00
| 3

Tvorba animací v Logu

V dalším článku o jazyce Logo si ukážeme tvorbu animací. Většina moderních implementací Loga umožňuje ukládání grafické plochy, po které se pohybuje a kreslí želva, do různých formátů rastrových obrázků. Ty lze dále převést do formy animací. Některá Loga dovolují i animace vytvořit přímo při běhu programu.

Pavel Tišnovský

23. 10. 2007 0:00

Funkce dostupné v moderních interpreterech Loga

V dalším článku o jazyku Logo si popíšeme některé nestandardní funkce a procedury, které jsou dostupné v modernějších interpreterech Loga. Jedná se o funkce pro práci se soubory, ovládání textového terminálu, komunikaci po síti a dále o funkce podporující běh programu ve více vláknech a multitasking apod.

Pavel Tišnovský

16. 10. 2007 0:00

Práce s řetězci v Logu

V dnešním článku o jazyce Logo si nejprve řekneme, jak v Logu pracovat s textovými řetězci a poté si popíšeme i některé standardní vstupně/výstupní funkce a procedury dostupné v prakticky všech moderních interpreterech Loga. Jedná se o funkce pro tisk na standardní výstup, čtení ze standardního vstupu apod.

Pavel Tišnovský

9. 10. 2007 0:00

Strukturované datové typy v Logu

V další části seriálu o programovacím jazyce Logo si řekneme, jak je možné v Logu používat další důležité strukturované datové typy. Zajímat nás bude zejména zásobník (stack), fronta (queue), pole (array) a seznam vlastností (property list). Ty můžeme použít i jako jednoduchá asociativní či hešovací pole.

Pavel Tišnovský

2. 10. 2007 0:00

Procedury APPLY, MAP, REDUCE a FOREACH

V dnešním článku o jazyce Logo si ukážeme procedury, které manipulují s celými seznamy. Jedná se především o APPLY, MAP či REDUCE, jež jsou implementovány i v mnoha dalších programovacích jazycích. Kromě toho si také ukážeme tvorbu iteračních cyklů prováděných nad seznamy pomocí procedury FOREACH.

Pavel Tišnovský

25. 9. 2007 0:00
| 6

Práce se seznamy v Logu

V dnešním článku o jazyce Logo se zaměříme na práci se seznamy. Logo, podobně jako další programovací jazyky vysoké úrovně, obsahuje už v základní knihovně mnoho procedur, pomocí kterých je možné jednoduše a elegantně se seznamy pracovat. Jedná se například o "funkcionální" iterátory typu map, apply či foreach.

Pavel Tišnovský

18. 9. 2007 0:00
| 5

Želví grafika - dokončení

V dnešním článku o jazyku Logo dokončíme část věnovanou želví grafice a jejímu použití. Ukážeme si, jak v některých implementacích Loga vykreslovat body, oblouky a elipsy, pracovat s texty i vyplňovat plochy. Nevynecháme ani popis práce s více želvami a využití přerušovacího systému pro obsluhu událostí.

Pavel Tišnovský

11. 9. 2007 0:00
| 2

Logo: použití barev a ovládání kreslicího pera

V dnešním článku o programovacím jazyce Logo si představíme a na šesti demonstračních příkladech vysvětlíme některé pokročilejší operace, které je možné provádět s želví grafikou. Pomocí těchto operací lze nastavovat styl vykreslování, zejména barvu a šířku pera, ovládat režim kreslicího pera a podobně.

Pavel Tišnovský

4. 9. 2007 0:00
| 7

Pokročilejší grafické operace v Logu

V desátém článku o jazyce Logo dokončíme kapitolu věnovanou použití generátoru náhodných čísel (RNG) při vykreslování grafických objektů. Ukážeme si tvorbu binárních stromů, od jejich nejzákladnější varianty až po plně parametrizovatelnou proceduru, kterou následně použijeme při generování modelu lesa.

Pavel Tišnovský

28. 8. 2007 0:00
| 4

Logo a matematika

Tentokrát si podrobněji řekneme, jaké matematické a logické funkce je možné v programech využívat. Také si ukážeme použití generátoru náhodných čísel (RNG - Random Number Generator), který lze použít v mnoha algoritmech, především ve spojení se želví grafikou.

Pavel Tišnovský

21. 8. 2007 0:00
| 3

Želví grafika a rekurze II

Tentokrát si ukážeme další využití rekurze při vykreslování obrázků pomocí želví grafiky, například tvorbu tzv. C-křivky či zobecněného Pythagorova stromu, včetně jeho animace, a vysvětlíme si práci s globálními proměnnými, které budeme používat při psaní složitějších programů.

Pavel Tišnovský

14. 8. 2007 0:00
| 6

Želví grafika a rekurze

V dalším článku o jazyce Logo si ukážeme, jak použít rekurzi při vytváření obrázků pomocí želví grafiky. Popíšeme si tvorbu křivky a sněhové vločky Helge von Kocha, vykreslení dvou verzí Sierpinského trojúhelníku a nakonec Pythagorova stromu. S rekurzí se mnoho algoritmů dá zapsat elegantně a přitom srozumitelně.

Pavel Tišnovský

7. 8. 2007 0:00

Rekurze v Logu

V dalším článku o programovacím jazyce Logo se seznámíme s velmi důležitou programátorskou technikou, takzvanou rekurzí. Pomocí rekurze se v Logu řeší mnoho algoritmických problémů, pro které jsou v jiných jazycích určeny iterační smyčky; tyto smyčky je však možné vždy převést na rekurzivní zápis.

Pavel Tišnovský

31. 7. 2007 0:00
| 1

Tvorba procedur, příkaz repeat a želví grafika

V dnešním článku o programovacím jazyce Logo si vysvětlíme zápis nových procedur, vytváření opakovaných částí kódu pomocí příkazu "repeat" a ukážeme si několik složitějších příkladů využívajících želví grafiku. Uvidíme, že i s použitím velmi malého množství příkazů je možné vytvářet mnoho zajímavých obrázků.

Pavel Tišnovský

24. 7. 2007 0:00
| 2

Základy želví grafiky

Nedílnou součástí většiny dnešních implementací Loga je takzvaná želví grafika, která umožňuje dětem i pokročilým uživatelům vytváření zajímavých vektorových obrázků s elementární znalostí programování a geometrie. Dnes si ukážeme základní příkazy, kterými je možné ovládat želvu a vytvářet jednoduché obrazce.

Pavel Tišnovský

17. 7. 2007 0:00

Komerční implementace Loga

V dalším článku o jazyku Logo si popíšeme některé známé komerční implementace Loga. Nejedná se přitom o aplikace, za které by se muselo vždy zaplatit, protože některá komerční Loga jsou dostupná (bez zdrojových kódů) i zadarmo, popř. s výraznými slevami pro učitele a žáky.

Pavel Tišnovský

10. 7. 2007 0:00

Volně šiřitelné implementace programovacího jazyka Logo

Dnes si popíšeme jednotlivé implementace Loga. Ty se liší zejména komfortem vývojového prostředí, možností práce s více želvami, multimediálními schopnostmi, podporou událostního programování, podporou OOP aj. Dlužno poznamenat, že i volně šiřitelné alternativy jsou velmi dobře použitelné.

Pavel Tišnovský

3. 7. 2007 0:00
| 3

Logo – dětská hračka nebo programovací jazyk?

Programovací jazyk Logo je vyvíjen již téměř čtyřicet let a ve světě se těší stále velké oblibě. Zejména na školách je používán pro výuku algoritmizace a především pro podporu konstruktivního učení. Někteří lidé považují Logo za pouhou dětskou hračku, ukážeme si však, že se jedná o zajímavý jazyk s možnostmi, které najdeme pouze ve vysokoúrovňových dynamických jazycích.

Pavel Tišnovský

26. 6. 2007 0:00