Téglák
Készítsd el a tégla(h)és fraktál(n,h) eljárást, amelyek a mintának megfelelő rajzokat készítik el! A h paraméter a legkülső tégla rövidebb oldalának a hossza, az n pedig a belső téglalapok száma. Színezd is ki az egymásba rajzolt téglákat véletlen színekkel! (15 különböző véletlen színkódot készíthetsz a random.randrange(15) paranccsal, de előtte használd az import random sort is!)
tégla(200)
fraktál(1,200)
fraktál(2,200)
fraktál(3,200)
Hivatalos megoldás (HTML)
Készítsd el a tégla(h)és fraktál(n,h) eljárást, amelyek a mintának megfelelő rajzokat készítik el! A h paraméter a legkülső tégla rövidebb oldalának a hossza, az n pedig a belső téglalapok száma. Színezd is ki az egymásba rajzolt téglákat véletlen színekkel! (15 különböző véletlen színkódot készíthetsz a random.randrange(15) paranccsal, de előtte használd az import random sort is!)
tégla(200) | fraktál(1,200) | fraktál(2,200) | fraktál(3,200) |
Színes téglalap közepébe rajzolunk újabb és újabb téglalapokat. A színt itt a rekurzió mélysége alapján választjuk ki.
eljárás fraktál :n :méret
ha :n>0 [töltőszín! :n+1
tollatfel előre :méret/4 jobbra 90 előre :méret/2
balra 90 tollatle tégla :méret/2
fraktál :n-1 :méret/2
tollatfel jobbra 90 hátra :méret/2 balra 90
hátra :méret/4 tollatle
]
vége
eljárás tégla :méret
ismétlés 2 [előre :méret jobbra 90 előre :méret*2 jobbra 90]
tollatfel jobbra 45 előre 5 tölt hátra 5 balra 45 tollatle
vége
A. Van téglalap alakú tégla 1 pont
B. A rajzolt tégla rövid oldala fele akkora, mint a hosszabbik 2 pont
C. A tégla 100 jó; tégla 150 jó 2 pont
D. A fraktál külső vonala egy téglalap 1 pont
E. A beleírt alakzatok mind téglalapok 2 pont
F. A belső téglalapok rendre a fele, negyede, nyolcada a külsőnek :n=1,2,3 esetében 2+3+4 pont
G. A belső téglalap(ok) pontosan az ábrának megfelelően, szimmetrikusan a tartalmazó téglalap közepén helyezkednek el 2+3+4 pont
H. A fraktál 1 200 jó; a fraktál 2 200 jó; a fraktál 3 200 jó; 3+3+3 pont
(színezés nélkül 2-2-2 pont)
I. Más paraméterekre (ésszerű méretekre) is jó eredményt ad. 5 pont