Mozaik
Készítsd el a minta és a mozaik eljárásokat a következő alapelem felhasználásával, amelynek a kódját segítségképpen megadjuk (a paraméter a négyzet oldalhosszát jelenti):
import math
def alapelem(méret):
turtle.pendown()
for i in range(4):
turtle.forward(méret)
turtle.right(90)
turtle.right(45)
turtle.forward(méret*math.sqrt(2))
turtle.backward(méret/2*math.sqrt(2))
turtle.left(90)
turtle.forward(méret/2*math.sqrt(2))
turtle.right(45)
turtle.backward(méret)
turtle.penup()
turtle.left(90)
alapelem(30)
alapelem 30
Készítsd el a minta és a mozaik eljárásokat! A minta eljárás a megadott méretű alapelemből rajzolja ki a képen látható mintát. A mozaik eljárás ezen mintákat helyezi egymás mellé, annyiszor, amennyi a második paraméter értéke.
minta(30)
mozaik(30,3)
Hivatalos megoldás (HTML)
Készítsd el a minta és a mozaik eljárásokat a következő alapelem felhasználásával, amelynek a kódját segítségképpen megadjuk (a paraméter a négyzet oldalhosszát jelenti):
import math def alapelem(méret): turtle.pendown() for i in range(4): turtle.forward(méret) turtle.right(90) turtle.right(45) turtle.forward(méret*math.sqrt(2)) turtle.backward(méret/2*math.sqrt(2)) turtle.left(90) turtle.forward(méret/2*math.sqrt(2)) turtle.right(45) turtle.backward(méret) turtle.penup() turtle.left(90) alapelem(30) | alapelem 30 |
Készítsd el a minta és a mozaik eljárásokat! A minta eljárás a megadott méretű alapelemből rajzolja ki a képen látható mintát. A mozaik eljárás ezen mintákat helyezi egymás mellé, annyiszor, amennyi a második paraméter értéke.
minta(30) | mozaik(30,3) |
Legyen kétféle alapelemünk, az egyiknél a bal-alsó, a másiknál a bal-felső sarokban legyen a két háromszög csúcsa!
eljárás mozaik :méret :oszlop
ismétlés :oszlop [minta :méret]
vége
eljárás minta :méret
ismétlés 2 [ismétlés 3 [alapelem_ba :méret e :méret
alapelem_bf :méret e :méret ]
hátra 6*:méret jobbra 90 előre :méret balra 90]
vége
eljárás alapelem_ba :méret
tollatfel balra 90 hátra :méret alapelem :méret
előre :méret jobbra 90
vége
eljárás alapelem_bf :méret
alapelem :méret
vége
eljárás alapelem :méret
tollatle
ismétlés 4 [előre :méret jobbra 90]
jobbra 45 előre :méret*gyök(2) hátra :méret/2*gyök(2)
balra 90 előre :méret/2*gyök(2) jobbra 45 hátra :méret
tollatfel
vége
alapelem
A. Az alapelem eljárásba a megfelelő kódot írta be, az alapelem a minta szerinti ábrát rajzolja ki a paraméterben megadott méretben 3 pont
minta
B. A minta eljárás 2 oszlopban és 6 sorban rajzolja ki az alapelemeket; az oszlopok pontosan illeszkednek, nincs üres hely közöttük 3+2 pont
C. A paraméter megadásával az alapelem mérete megváltoztatható 2 pont
D. A kirajzolt ábra pontosan megfelel a mintának 12 pont
(minden helytelen alapelem kirajzolás az adott pozíción 1 pont levonást jelent)
mozaik
E. A mozaik eljárás kirajzolja egymás mellé a mintákat; pontosan annyiszor, amennyi a második paraméter 3+4 pont
F. A mozaik eljárás első paramétere az alapelem méretét jelenti 2 pont
G. A kirajzolt minták egy vonalban vannak; nincs üres hely köztük és nem lógnak egymásra
2+2 pont