Programowanie w języku LOGO w programie Simba 3D

Download Report

Transcript Programowanie w języku LOGO w programie Simba 3D

Język
programowania
LOGO
Opracowanie: Zuzanna Gawlas
Na podstawie:
http://pl.wikipedia.org/wiki
http://konkurs.erisoftware.pl/news.php
WSTĘP
Język
programowania
Logo
powstał
w
Laboratorium
Sztucznej
Inteligencji
w MIT (Massachusetts Institute of Technology)
w latach siedemdziesiątych naszego stulecia.
Został opracowany przez grupę
pod
kierownictwem
Seymoura
Jest dialektem języka LISP.
uczonych
Paperta.
W pracach nad nim wykorzystano wyniki badań
szwajcarskiego pedagoga i psychologa, profesora
Jeana Piageta (09.08.1896 - 16.09.1980).
Sterowanie robotem
Początkowo język Logo służył do sterowania robotem
z wyglądu przypominającym żółwia.
Robot po wpisaniu komendy przemieszczał się
po podłodze w przód, w tył, obracał się w prawo
i w lewo.
„Żółw” wyposażony był także w specjalny pisak,
dzięki któremu mógł znaczyć trasę swojej wędrówki.
Z czasem żółw Logo przeniósł się na monitory
komputerów.
Zalety programowania
Logo jest językiem pierwszego kontaktu człowieka
z komputerem.
Jest nowoczesnym językiem wysokiego poziomu,
umożliwiającym rozwiązywanie ważnych problemów
z informatyki, matematyki i innych dziedzin.
Prostota i przejrzystość języka powodują, że jest on
łatwy w obsłudze, wyrabia dobre nawyki, uczy zasad
poprawnego, strukturalnego programowania.
Programowanie strukturalne
Programowanie strukturalne to takie, w którym
złożone, trudne i skomplikowane problemy
rozkładane są na mniejsze i mniejsze tak długo,
aż staną się proste, łatwe i zrozumiałe.
Jednym z istotnych założeń przyświecających
twórcom języka LOGO było to, aby instrukcje w tym
języku brzmiały podobnie do zdań w języku
naturalnym (w tym wypadku angielskim).
LOGO w Polsce
W
Polsce
język
Logo
jest
od połowy lat osiemdziesiątych XX w.
powszechny
Ze względu na swoje szczególne zastosowanie
słownik języka Logo ma liczne realizacje narodowe,
w szczególności z użyciem wyrazów polskich, np.:
1) AC-Logo
2) Logo – Komeniusz
3) Logomocja – Imagine
4) Simba 3D
Okno programu Logo Komeniusz
Okno programu Logomocja
Okno programu Simba 3D
Postać Simby
Simba (Żółw) porusza się po ekranie
krokami.
Jeden krok to jeden punkt graficzny
tzw. piksel.
Podczas wędrówki Simba
znaczyć swój ślad pisakiem.
może
Technika programowania rysunków
w Logo to grafika żółwia.
Procedury pierwotne
Najprostsze czynności zostały
przez twórców języka logo.
zdefiniowane
Nazywamy je procedurami pierwotnymi.
Procedury pierwotne to inaczej polecenia,
rozkazy, jakie
można
wydawać Simbie.
Wystarczy wpisać dane polecenie w linii poleceń.
Procedury pierwotne
CZYŚĆ
skrót: CS
Polecenie czyści rysunek i ustawia
simbę na środku ekranu. Zwykle
stosuje się to polecenie na początku
programu lub w trybie wykonywania
poleceń bezpośrednich.
Przykład:
CZYŚĆ
Procedury pierwotne
IDŹ
ile_kroków
NAPRZÓD
ile_kroków
skrót: NP
Przesuwa simbę o zadaną liczbę
kroków do przodu. Simba poruszając
się do przodu rysuję linię o
długości podanej zamiast ile_kroków
Przykład:
IDŹ 100
NP 100
Efekt:
Simba przesuwa się do przodu o 100
kroków i rysuję linie o długości 100.
Procedury pierwotne
PRAWO
kąt
skrót: PW
Obraca simbę w prawo o zadany kąt.
Pełny obrót to 360 stopni
Przykład:
PRAWO 90
Efekt:
Obraca simbę w prawo o 90 stopni.
Od tego momentu simba będzie się
poruszać w prawo względem
poprzedniego ruchu naprzód.
Procedury pierwotne
LEWO kąt Obraca simbę w lewo o zadany kąt.
skrót: LW Pełny obrót to 360 stopni
Przykład:
LEWO 90
Efekt:
Obraca simbę w lewo o 90 stopni. Od
tego momentu simba będzie się
poruszać w lewo względem
poprzedniego ruchu naprzód.
Procedury pierwotne
PODNIEŚ Użycie tego polecenia pozwala poruszać się
skrót: POD simbą bez rysowania linii. Dzięki czemu
możemy przestawić simbę w celu
narysowanie drugiej figury.
Przykład:
PODNIEŚ
NP 50
Efekt:
Simba uniesie swój pisak i przesunie się do
przodu o 50 kroków. Jeśli chcemy ponownie
rysować musimy zastosować polecenie
OPUŚĆ
Procedury pierwotne
Polecenie opuszcza pisak simby, dzięki
OPUŚĆ
skrót: OPU czemu znowu możemy rysować. Zwykle
stosujemy je po wykonaniu polecenia
PODNIEŚ.
Przykład:
PODNIEŚ
NP 50
OPUŚĆ
Efekt:
Simba uniesie swój pisak i przesunie się do
przodu o 50 kroków, następnie opuści pisak i
będzie gotowy do rysowania.
Procedury pierwotne
KOLOR
skrót: KOL
Polecenie pozwala ustawić kolor pisaka. Można go
używać z różnymi kombinacjami kolorów. Kolory
można podawać na trzy sposoby:
wpisując nazwę koloru. Przykład: KOLOR niebieski
wpisując trzy składowe RGB. Przykład: KOLOR
45 90 255
Polecenie kolor można używać podając dwa kolory.
Dzięki temu podczas rysowania uzyskamy
przejście z jednego koloru do drugiego.
Przykład:
KOLOR biały czarny
NP 10
Efekt:
Simba narysuje linię, która na początku będzie
miała kolor biały a na końcu kolor czarny.
Przejście z jednego koloru do drugiego odbywa
się w sposób płynny.
Kolory
akwamaryna
biały
alabastrowy
biskupi
amarantowy
błękit_królewski
ametystowy
błękit_paryski
antracytowy
błękit_pruski
arbuzowy
błękit_Thénarda
atramentowy
błękit_Turnbulla
bahama
bordowy
bananowy
brązowy
beżowy
brunatny
Kolory
brzoskwiniowy
cyklamen
buraczkowy
cynamonowy
Burgund
cynobrowy
bursztynowy
cytrynowy
Bury
czarny
Ceglasty
czekoladowy
Chabrowy
czerwień_wzrokowa
Chamois
czerwień_żelazowa
Cielisty
czerwony
cyjan
ecru
Kolory
eozyna
heban
feldgrau
herbaciany
fioletowy
indygo
fiołkowy
jagodowy
fuksja
jaśminowy
gołębi
kakaowy
grafitowy
kanarkowy
granatowy
kardynalski
groszkowy
karmazynowy
grynszpan
karminowy
Kolory
kasztanowy
lapis-lazuli
kawowy
lazurowy
khaki
lila
kobaltowy
lila_róż
koniakowy
liliowy
koralowy
limonkowy
kość_słoniowa
łososiowy
kremowy
magenta
krwisty
mażenta
lawendowy
mahoń
Kolory
majtkowy
mleczny
makowy
modry
malachitowy
morelowy
malinowy
morski
marchewkowy
mosiądz
marengo
mysi
miedziany
niebieski
miętowy
oberżynowy
minia
ochra
miodowy
oliwkowy
Kolory
oranż
płowy
orzechowy
pomarańczowy
palisander
popielaty
patynowy
pąsowy
perłowy
piaskowy
porcelanowy
poziomkowy
purpurowy
pistacjowy
rdzawy
piwny
róż_indyjski
platynowy
róż_pompejański
Kolory
róż_wenecki
siena_palona
różowy
słomkowy
rubinowy
smolisty
rudy
spiżowy
sadza_angielska
srebrny
seledynowy
stalowy
sepia
stare złoto
siarkowy
szafirowy
siny
szafranowy
siwy
szary
Kolory
szkarłatny
szmaragdowy
ultramaryna
umbra
zieleń_zgniła
zielony
śliwkowy
winny
tabaczkowy
wiśniowy
tango
woskowy
złoty
wrzosowy
żółty
trawiasty
truskawkowy
zieleń_butelkowa
zieleń_jaskrawa
turkusowy
zieleń_Veronese
tycjan
zieleń_wiosenna
ugier
złocisty
Procedury pierwotne
DÓŁ kąt
skrót: DL
Obraca simbę w dół o zadany kąt. Pełny obrót to
360 stopni
Przykład:
DÓŁ 90
Efekt:
Obraca simbę w dół o 90 stopni. Od tego momentu
simba będzie się poruszać w dół względem
poprzedniego ruchu naprzód.
GÓRA kąt
skrót: GR
Obraca simbę w górę o zadany kąt. Pełny obrót to
360 stopni
Przykład:
GÓRA 90
Efekt:
Obraca simbę w górę o 90 stopni. Od tego
momentu simba będzie się poruszać w górę
względem poprzedniego ruchu naprzód.
Procedury pierwotne
POWTÓRZ
ile [ … ]
Polecenie pozwala wykonywać simbie takie same
polecenia określoną ilość razy.
Przykład:
POWTÓRZ 4 [NP 100 PW 90]
Efekt:
Simba wykona 4 razy polecenia
NP 100 i PW 90.
Czego skutkiem będzie narysowanie kwadratu.
Zastosowanie tego polecenia znacznie skraca ilość
poleceń do narysowania takich figur jak koło lub
sześciobok.
Procedury bez parametrów
OTO nazwa
…………
JUŻ
Polecenie OTO pozwala nauczyć simbę wykonywać
ciąg poleceń. Można określić to mianem podprogramu.
Dzięki temu raz wykonane polecenia można
wywoływać w dowolnej chwili. Polecenie OTO musimy
zawsze zakończyć poleceniem JUŻ. Zastosowanie
bloków OTO pozwala w znacznym stopniu skrócić
nasz program, a zarazem uczynić go bardziej
czytelnym.
Przykład:
OTO kwadrat
POWTÓRZ 4 [NP 100 PW 90]
JUŻ
Efekt:
Zdefiniowaliśmy podprogram kwadrat. Teraz za
każdym razem, kiedy wpiszemy polecenie kwadrat
simba go narysuje.
Procedury z parametrami
OTO nazwa :n Dla bloków OTO możemy zdefiniować parametry.
Przykład:
…………
JUŻ
OTO kwadrat :bok
POWTÓRZ 4 [NP :bok PW 90]
JUŻ
Efekt:
Tak zapisany podprogram możemy wywoływać
poleceniem: kwadrat 50 lub kwadrat 100
Dzięki temu uzyskujemy możliwość sterowania
wielkością kwadratu w zależności od potrzeb. Oczywiście
liczba parametrów dla bloków OTO może być dowolna.
W analogiczny sposób możemy zrobić podprogram
prostokąt:
OTO prostokąt :bokA :bokB
POWTÓRZ 2 [NP :bokA PW 90 NP :bokB PW 90]
JUŻ
Wywołanie: prostokąt 150 50