30
Język programowania LOGO Opracowanie: Zuzanna Gawlas Na podstawie: http://pl.wikipedia.org/wiki http:// konkurs.erisoftware.pl / news.php

Język programowania LOGO

  • Upload
    jasia

  • View
    60

  • Download
    0

Embed Size (px)

DESCRIPTION

Język programowania LOGO. Opracowanie: Zuzanna Gawlas Na podstawie: http://pl.wikipedia.org/wiki http://konkurs.erisoftware.pl/news.php. WSTĘP. - PowerPoint PPT Presentation

Citation preview

Page 1: Język  programowania LOGO

Język programowania

LOGO

Opracowanie: Zuzanna Gawlas Na podstawie: http://pl.wikipedia.org/wiki

http://konkurs.erisoftware.pl/news.php

Page 2: Język  programowania LOGO

WSTĘPJęzyk programowania Logo powstał w Laboratorium Sztucznej Inteligencji w MIT (Massachusetts Institute of Technology) w latach siedemdziesiątych naszego stulecia.

Został opracowany przez grupę uczonych pod kierownictwem Seymoura Paperta. Jest dialektem języka LISP.

W pracach nad nim wykorzystano wyniki badań szwajcarskiego pedagoga i psychologa, profesora Jeana Piageta (09.08.1896 - 16.09.1980).

Page 3: Język  programowania LOGO

Sterowanie robotemPoczą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.

Page 4: Język  programowania LOGO

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.

Page 5: Język  programowania LOGO

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).

Page 6: Język  programowania LOGO

LOGO w Polsce

W Polsce język Logo jest powszechny od połowy lat osiemdziesiątych XX w.

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-Logo2) Logo – Komeniusz3) Logomocja – Imagine 4) Simba 3D

Page 7: Język  programowania LOGO

Okno programu Logo Komeniusz

Page 8: Język  programowania LOGO

Okno programu Logomocja

Page 9: Język  programowania LOGO

Okno programu Simba 3D

Page 10: Język  programowania LOGO

Postać Simby

Simba (Żółw) porusza się po ekranie krokami.

Jeden krok to jeden punkt graficzny tzw. piksel.

Podczas wędrówki Simba może znaczyć swój ślad pisakiem.

Technika programowania rysunków w Logo to grafika żółwia.

Page 11: Język  programowania LOGO

Procedury pierwotne

Najprostsze czynności zostały zdefiniowane przez twórców języka logo.

Nazywamy je procedurami pierwotnymi.

Procedury pierwotne to inaczej polecenia, rozkazy, jakie można wydawać Simbie. Wystarczy wpisać dane polecenie w linii poleceń.

Page 12: Język  programowania LOGO

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ŚĆ

Page 13: Język  programowania LOGO

Procedury pierwotne

IDŹ ile_krokówNAPRZÓDile_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Ź 100NP 100

Efekt:Simba przesuwa się do przodu o 100 kroków i rysuję linie o długości 100.

Page 14: Język  programowania LOGO

Procedury pierwotne

PRAWO kątskró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.

Page 15: Język  programowania LOGO

Procedury pierwotne

LEWO kątskrót: LW

Obraca simbę w lewo o zadany kąt. 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.

Page 16: Język  programowania LOGO

Procedury pierwotne

PODNIEŚskrót: POD

Użycie tego polecenia pozwala poruszać się 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ŚĆ

Page 17: Język  programowania LOGO

Procedury pierwotne

OPUŚĆskrót: OPU

Polecenie opuszcza pisak simby, dzięki czemu znowu możemy rysować.  Zwykle stosujemy je po wykonaniu polecenia PODNIEŚ.

Przykład:PODNIEŚNP  50OPUŚĆ

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.

Page 18: Język  programowania LOGO

Procedury pierwotneKOLORskró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 czarnyNP  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.

Page 19: Język  programowania LOGO

Kolory

  akwamaryna

  alabastrowy

  amarantowy

  ametystowy

  antracytowy

  arbuzowy

  atramentowy

  bahama

  bananowy

  beżowy

  biały

  biskupi

  błękit_królewski

  błękit_paryski

  błękit_pruski

  błękit_Thénarda

  błękit_Turnbulla

  bordowy

  brązowy

  brunatny

Page 20: Język  programowania LOGO

Kolory

  brzoskwiniowy

  buraczkowy

  Burgund

  bursztynowy

  Bury

  Ceglasty

  Chabrowy

  Chamois

  Cielisty

  cyjan

  cyklamen

  cynamonowy

  cynobrowy

  cytrynowy

  czarny

  czekoladowy

  czerwień_wzrokowa

  czerwień_żelazowa

  czerwony

  ecru

Page 21: Język  programowania LOGO

Kolory

  eozyna

  feldgrau

  fioletowy

  fiołkowy

  fuksja

  gołębi

  grafitowy

  granatowy

  groszkowy

  grynszpan

  heban

  herbaciany

  indygo

  jagodowy

  jaśminowy

  kakaowy

  kanarkowy

  kardynalski

  karmazynowy

  karminowy

Page 22: Język  programowania LOGO

Kolory

  kasztanowy

  kawowy

  khaki

  kobaltowy

  koniakowy

  koralowy

  kość_słoniowa

  kremowy

  krwisty

  lawendowy

  lapis-lazuli

  lazurowy

  lila

  lila_róż

  liliowy

  limonkowy

  łososiowy

  magenta

  mażenta

  mahoń

Page 23: Język  programowania LOGO

Kolory

  majtkowy

  makowy

  malachitowy

  malinowy

  marchewkowy

  marengo

  miedziany

  miętowy

  minia

  miodowy

  mleczny

  modry

  morelowy

  morski

  mosiądz

  mysi

  niebieski

  oberżynowy

  ochra

  oliwkowy

Page 24: Język  programowania LOGO

Kolory

  oranż

  orzechowy

  palisander

  patynowy

  pąsowy

  perłowy

  piaskowy

  pistacjowy

  piwny

  platynowy

  płowy

  pomarańczowy

  popielaty

  porcelanowy

  poziomkowy

  purpurowy

  rdzawy

  róż_indyjski

  róż_pompejański

Page 25: Język  programowania LOGO

Kolory

  róż_wenecki

  różowy

  rubinowy

  rudy

  sadza_angielska

  seledynowy

  sepia

  siarkowy

  siny

  siwy

  siena_palona

  słomkowy

  smolisty

  spiżowy

  srebrny

  stalowy

  stare złoto

  szafirowy

  szafranowy

  szary

Page 26: Język  programowania LOGO

Kolory

  szkarłatny

  szmaragdowy

  śliwkowy

  tabaczkowy

  tango

  trawiasty

  truskawkowy

  turkusowy

  tycjan

  ugier

  ultramaryna

  umbra

  winny

  wiśniowy

  woskowy

  wrzosowy

  zieleń_butelkowa

  zieleń_jaskrawa

  zieleń_Veronese

  zieleń_wiosenna

  zieleń_zgniła

  zielony

  złocisty

  złoty

  żółty

Page 27: Język  programowania LOGO

Procedury pierwotneDÓŁ kątskrót: DL

Obraca simbę w dół o zadany kąt. Pełny obrót to 360 stopniPrzykład:DÓŁ 90Efekt: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ątskró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.

Page 28: Język  programowania LOGO

Procedury pierwotnePOWTÓ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.

Page 29: Język  programowania LOGO

Procedury bez parametrówOTO 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 kwadratPOWTÓRZ 4 [NP 100 PW 90]JUŻ

Efekt: Zdefiniowaliśmy podprogram kwadrat. Teraz za każdym razem, kiedy wpiszemy polecenie kwadrat

simba go narysuje.

Page 30: Język  programowania LOGO

Procedury z parametramiOTO nazwa :n…………

JUŻ

Dla bloków OTO możemy zdefiniować parametry.

Przykład:OTO kwadrat :bokPOWTÓ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 :bokBPOWTÓRZ 2 [NP :bokA PW 90 NP :bokB PW 90]JUŻ

Wywołanie: prostokąt 150 50