Algorytmika - grafika żółwia

Lekcja 6 - Rząd Kwadratów

Znając procedurę kwadrat jesteśmy  gotowi do tworzenia rysunków, których częścią są kawadraty. Zacznijmy od narysowania słupka z trzech kwadratów leżacych jeden na drugim. Algorytm ma rysować trzy kwadraty w pionowej kolumnie. Po zakończeniu rysunku żółw powinien znajdować się w pozycji takiej samej jak na poczatku

 

1) Start
2)wprowadzenie danej: bok kwadratu;
3) powtórzenie 3 razy:

wywołanie procedury KWADRAT, przejście o bok naprzód;

koniec powtórzenia;

4)   przejście wstecz o potrojoną długość boku;

5)   koniec.

Created by DPE, Copyright IRIS 2005 

 

Czwarty punkt algorytmu - przejście wstecz - jest konieczny, gdyż chcemy, żeby na końcu rysowania żółw był tak samo ustawiony jak na początku. Procedurę KWADRAT można przekopiować z poprzedniego algorytmu. Zauważmy, że z procedury KWADRAT korzystamy w ten sam sposób jak z gotowych klocków typu NAPRZÓD czy PRAWO, jedyna różnica polega na tym, iż procedurę KWADRAT musimy sami zdefiniować, a polecenia - klocki z palety mają gotowe definicje (stworzone przez autora programu).

Pora na wykonanie algorytmu. Patrzymy, jak w oknie żółwia powstaje rysunek i równocześnie czerwona obwódka wykonywania algorytmu przesuwa się po kolejnych klockach. Gdy natrafia na wywołanie procedury, przeskakuje do ciągu klocków definiujących procedurę, a po natrafieniu na klocek końca procedury wraca do głównego algorytmu.

 

Na zakończenie warto wybrać z menu Plik/Zachowaj Wszystko, co powoduje zapisanie zarówno projektu, ze stanem wszystkich okien,jak i planszy z algorytmem.

Algorytm jest zapisany w projekcie L6KWAD.PRJ na planszy L6KWAD.SCH.

 

 

Algorytm główny

 UWAGA CZVTAJ bok

POWTÓRZ 3 nr Kwadratu

[KWADRAT bok

 NAPRZÓD bok]

 WSTECZ 3*bok

KONIEC

 

 

Procedura KWADRAT

OTO KWADRAT bok

 POWTÓRZ 4 numerBoku

[NAPRZÓD bok

PRAWO 90]

JUŻ


 

 


 

1. Zmieńcie główny algorytm tak, aby rysowany był rząd 3 kwadratów w poziomie

2.  Przeróbcie główny algorytm tak, aby wczytywać nie tylko długość boku, ale także liczbę kwadratów, które będą rysowane.

3.  * Zbudujcie algorytm, który będzie rysował kratkę kwadratową: n kolumn po k kwadratów stykających się ze sobą (n -liczba kwadratów w poziomie, k -liczba kwadratów w pionie).

.