Hobbyspace.pl – blog dla hobbystów

Porady, projekty, recenzje dla fanów elektroniki i programowania

  • O blogu
  • Strona główna

Social

Szukaj

Kategorie

  • Arduino
  • Bez kategorii
  • FPGA
  • Logomocja
  • Raspberry Pi
  • Robotyka
  • STM32
  • WiFi

Ostatnie wpisy

  • Instalacja Raspberry Pi Camera v2
  • Raspberry Pi – włączenie SSH
  • Podłączenie Raspberry Pi do Internetu
  • Zmiana układu klawiatury Raspberry Pi
  • Raspbian – logowanie się do systemu, zmiana hasła, dodawanie i usuwanie użytkowników, zmiana uprawnień

Najnowsze komentarze

  • Darek - RNS-510 – aktualizacja mapy z karty SD
  • Tomasz - Jak przywrócić pełną pojemność karty SD?
  • Mirek - RNS-510 – aktualizacja mapy z karty SD
  • Skodnik4x4 - RNS-510 – aktualizacja mapy z karty SD
  • seniak2 - RNS-510 – aktualizacja mapy z karty SD

Archiwa

  • wrzesień 2017
  • lipiec 2017
  • czerwiec 2017
  • kwiecień 2017
  • marzec 2017
  • listopad 2016
  • sierpień 2016
  • lipiec 2016
  • czerwiec 2016
  • maj 2016
  • marzec 2016
  • luty 2016
  • styczeń 2016
  • grudzień 2015
  • listopad 2015
  • październik 2015
  • wrzesień 2015
  • lipiec 2015

Rozwiązanie zadania 2 z konkursu miniLOGIA 10 (2011/12) etap 2

24 marca 2016 przez ZKeram·Możliwość komentowania Rozwiązanie zadania 2 z konkursu miniLOGIA 10 (2011/12) etap 2 została wyłączona
Fb-Button

„miniLOGIA grafika w Logo” to konkurs informatyczny dla uczniów szkół podstawowych województwa mazowieckiego organizowany przez Ośrodek Edukacji Informatycznej i Zastosowań Komputerów (OEIiZK) na zlecenie Mazowieckiego Kuratora Oświaty. Konkurs składa się z trzech etapów, podczas których uczniowie samodzielnie rozwiązują zadania graficzne w językach Logo lub Python (z zainstalowanym modułem turtle).

W serii artykułów przedstawię rozwiązania zadań w języku Logo, opracowane przeze mnie podczas przygotowywania się do konkursu. Jako środowisko, w którym opracowywałem rozwiązania zadań wykorzystałem zalecane przez organizatora oprogramowanie Logomocja-Imagine.

Zadanie 2

Napisz procedurę ZAMEK :n, po wywołaniu której na ekranie powstanie rysunek zamku taki, jak na rysunkach poniżej. Długość boku trójkąta tworzącego daszek wieży jest większa od długości boku kwadratu tworzącego okienko o 4 1 jego długości. Parametr :n określa liczbę okienek zamku i może przyjmować wartości od 4 do 24. Szerokość zamku jest stała i wynosi 760


Rozwiązanie:

oto zamek :ile
 tlo :ile
 wieze :ile
 rzad :ile
już

===================================================

oto wieze :ile
 niech "bok (760/(:ile*2+1))*1.25
 niech "bok2 760/(:ile*2+1)
 np :bok2*4
 ukm "czerwony
 lw 90
 np :bok2*0.125
 pw 90
 tr :bok
 pw 90
 np :bok2+:bok2*0.125
 pw 90
 np :bok2
 lw 90
 np (:bok2*(:ile*2-3))
 lw 90
 np :bok2
 lw 90
 np :bok2*0.125
 pw 90
 tr :bok
 pw 90
 np :bok2*1.125
 pw 90
 np :bok2
 lw 90
 np :bok2
 lw 90
 np :bok2
 lw 90
 np :bok2*0.125
 pw 90
 tr :bok
 pw 90
 np :bok2*1.125
 pw 90
 np :bok2*4
 pw 90
 np 760
 pw 90
już

===================================================

oto tr :bok
 pw 30
 wielokąt [powtórz 3[np :bok pw 120]]
 lw 30
już

===================================================

oto tlo :ile
 cs
 pod
 niech "bok 760/(:ile*2+1)
 ws :bok*2.5
 lw 90
 np 760/2
 pw 90
 opu
 ukm "szary
 wielokąt [np (:bok*4)
 pw 90
 np :bok
 pw 90
 np :bok
 lw 90
 np (:bok*(:ile*2-3))
 
 lw 90
 np :bok
 pw 90
 np :bok
 pw 90
 np :bok
 lw 90
 np :bok
 
 lw 90
 np :bok
 pw 90
 np :bok
 pw 90
 np (:bok*4)
 pw 90
 np 760
 pw 90
 ]
już

===================================================

oto rzad :ile
 ukm "jasnoniebieski
 niech "bok 760/(:ile*2+1)
 pod
 np :bok
 pw 90
 np :bok
 lw 90
 powtórz :ile [kw :bok]
już 

=================================================== 

oto kw :bok
 opu
 wielokąt [powtórz 4 [np :bok pw 90]]
 pw 45
 np pkw(:bok*:bok*2)
 ws (pkw(:bok*:bok*2))/2
 pw 90
 np (pkw(:bok*:bok*2))/2
 ws (pkw(:bok*:bok*2))
 lw 45
 pod
 np :bok*2
 pw 90
 np :bok
 pw 180
już

Wynik działania programu:

 

zamek 9

 

Plik Logomocji z rozwiązaniem zadania do pobrania.

Imagine Logo Logomocja miniLOGIA

Nawigacja wpisu

Poprzedni Poprzedni wpis Rozwiązanie zadania 3 z konkursu miniLOGIA 12 (2013/14) etap 2
Next Poprzedni wpis Rozwiązanie zadania 1 z konkursu miniLOGIA 10 (2011/12) etap 2
Proudly powered by WordPress. Theme: Flat 1.5.7 by YoArts.