Informatyka - Logo Komeniusza lub Logomocji

martynkaaa
Użytkownik
Użytkownik
Posty: 2
Rejestracja: 5 lut 2011, o 14:21
Płeć: Kobieta
Lokalizacja: Sandomierz

Informatyka - Logo Komeniusza lub Logomocji

Post autor: martynkaaa »

Prosze o podpowiedź w rozwiązaniu tego zadania, jest mi ono potrzebne do szkoły na lekcję informatyki za tydzień, ale nie bardzo mogę sobie z nim poradzić Oto treść:

Napisz zestaw procedur tworzących na ekranie rysynek piramidy składającej się z ośmioramiennych gwiazdek. Długość boku gwiazdki oraz liczba gwiazdek w najniższym rzędzie są zmiennymi. Procedura ma mieć nazwę: "piramida :n :a"; gdzie n oznacza liczbę gwiazdek w najniższym rzędziw, natomiast a oznacza długość boku gwiazdki.

Jeszcze raz bardzo proszę o pomoc. Jest to bardzo ważne dla mnie...
sonicwork
Użytkownik
Użytkownik
Posty: 67
Rejestracja: 3 wrz 2010, o 00:38
Płeć: Mężczyzna
Lokalizacja: Polska
Podziękował: 2 razy
Pomógł: 1 raz

Informatyka - Logo Komeniusza lub Logomocji

Post autor: sonicwork »

w logo komeniuszu nie programowałem od minimum 10 lat, zresztą w tamtych czasach to się umiało więcej od nauczyciela

nie pamiętam jak się programuje ale wrzuć to co napisałeś do tej pory to pomogę, jeśli jeszcze nie napisałeś nic to bierz się do roboty bo tu gotowca nie dostaniesz, podpowiem tyle że:
- musisz znaleźć wzór rysujący takie gwiazdki
- każdy następny rząd zaczynaj rysować przesunięty o odległość połowy gwiazdki w lewo od początku poprzedniego( rysując od góry)
martynkaaa
Użytkownik
Użytkownik
Posty: 2
Rejestracja: 5 lut 2011, o 14:21
Płeć: Kobieta
Lokalizacja: Sandomierz

Informatyka - Logo Komeniusza lub Logomocji

Post autor: martynkaaa »

Nie oczekuje gotowca, bo taka zielona to ja nie jestem, ale mam jeden problem, zresztą zobaczysz jaki po przeczytaniu procedur..

oto gwiazda :a
powtórz 8 [lw 90 np :a pw 135 np ]
pod ws :a pw 45 np :a pw 90 np :a lw 135 np :a pw 90 np 2 * :a lw 90 opu
już

oto piramida :n :a
jeśli :n = 1 [gwiazda ]
jeśli :n >= 2 [powtórz :n [gwiazda ] powtórz :n - 1 [ pod np pwk ( 2 * :a * :a ) np 2 * :a lw 90 powtórz :n - 1 [ np pwk ( 2 * :a * :a ) ] powtórz :n [ np 2 * :a ] ws :a / 4 pw 90 opu powtórz :n - 1 [gwiazda ]]]

Problem polaga na tym, że jak powtarzam te same czynności to w pewnym momencie powinien za każdą powtórką odejmować jeden więcej, a nie wiem co wpisać żeby tak się działo...
ODPOWIEDZ