Metoda zstępująca projektowania algorytmów

Transkrypt

Metoda zstępująca projektowania algorytmów
Studium Podyplomowe informatyki, Programowanie – materiały pomocnicze
przygotowała Helena Krupicka
1
Metoda zstępująca projektowania algorytmów, czyli metoda „od ogółu do szczegółu”
Zadanie – narysuj domy
Specyfikacja zadania polega na uściśleniu, czyli podaniu kształtu i wymiarów rysunku domów (zob. rys. poniżej).
Rysunek jest zależny od jednego parametru. Jest nim jednostka (:j). Wymiary i odległości są wyrażone w liczbie jednostek, np. 5j.
j*PWK 2
Zakładamy, że
1.
każdy element rysunku zaczynamy
rysować od lewego dolnego rogu rysunku
i
2.
położenie żółwia jest niezmiennikiem
procedur.
Projekt:
Rozpoczynamy od prototypu programu (ciągu procedur) rysującego domy.
OTO Domy :j
OTO Segment :j
OTO Dom :j
Segment :j
; pusta treść
; pusta treść
Dom :j
JUŻ
JUŻ
JUŻ
Procedurą główną niech będzie starter:
OTO starter
CS Domy 20
JUŻ
Domy
/
\
Segment
Dom
/ \
/ \
Dom Dom Ściana JednoOkno
|
/
Prostokąt
|
(plik w7-8domy1)
NP, PW, ...
=========== Brakuje przemieszczeń żółwia między elementami rysunku w procedurze Domy. Użyj procedury Hop.
Uzupełnij prototyp procedury Domy i uruchom program wywołując starter.
OTO Domy :j
OTO Segment :j
OTO Dom :j
Segment :j
; pusta treść
; pusta treść
(plik w7-8domy2)
Hop 11 * :j 0
JUŻ
JUŻ
Dom :j
Hop -11 * :j 0
JUŻ
=========== Uzupełnij treść procedury Segment, wpisz prototypy wywoływanych przez nią nowych procedur (i wywołaj starter).
OTO Segment :j
OTO Dom :j
Dom :j
JUŻ
Hop 4 * :j 0
(plik w7-8domy3)
Dom :j
Hop -4 * :j 0
JUŻ
============ Uzupełnij treść procedury Dom, wpisz prototypy wywoływanych przez nią nowych procedur (i wywołaj starter).
OTO Dom :j
OTO Ściana :j
OTO JednoOkno :j
OTO Dach :j
Ściana :j
JUŻ
JUŻ
JUŻ
;na początek okien
Hop :j :j
POWTÓRZ 2 [JednoOkno :j Hop 0 2 * :j]
(plik w7-8domy4)
;na początek dachu
Hop (-1 * :j) 0
Dach :j
;na początek domu
Hop 0 (-5 * :j)
JUŻ
============ Uzupełnij kolejno treści procedur: Ściana, JednoOkno, Dach i uruchamiaj starter.
OTO Ściana :j
OTO JednoOkno :j
Prostokąt (5 * :j) (4 * :j)
Prostokąt :j 2 * :j Prostokąt :j :j
JUŻ
JUŻ
OTO Dach :j
PW 135 NP 4 * :j
OTO Prostokąt :a :b
PW 45 NP :j * PWK 2
PW 90
POWTÓRZ 2 [NP :a PW 90 NP :b PW 90]
PW 45 NP 2 * :j
JUŻ
JUŻ
PW 45 NP :j * PWK 2
============= Koniec projektu rysowania domów metodą zstępującą.
(plik w7-8domy5)
(plik w7-8domy)

Podobne dokumenty