Vakdidactiek 28/11/2004
description
Transcript of Vakdidactiek 28/11/2004
Vakdidactiek
28/11/2004
Saartje De Geyter
Doel van deze les: tekenen van een huis met vaste coordinaten en afmetingen
X-as
Y-as
90°
(0,0)
200
30 100
80
130 170
40
150
De top-down methode
Doel: via een stapsgewijze verfijning het oorspronkelijke probleem opdelen in kleinere deelproblemen.
De deelproblemen verder opdelen totdat de problemen herleid zijn tot basiscommando’s of reeds geziene procedures.
Vb: molen van vorige les
Stapsgewijze verfijning van de molen
Stapsgewijze verfijning van de molen
molen
muren
rechthoek
dak driehoek
wieken 4 * wiek
rechthoek
rechte
Stapsgewijze verfijning van het huis
Stapsgewijze verfijning van het huis
huis
muur
dak driehoek
rechthoek
deur rechthoek
deurklink cirkel
raam rechthoek
Implementatie deelproblemen
Doel: elk eenvoudig deelprobleem apart implementeren (aparte procedures) om zo de implementatie van de complexe toepassing te bekomen.
Elke procedure moet zo onafhankelijk mogelijk kunnen werken van de andere.Vb: procedure “dak” is zelf verantwoordelijk
voor het correct verplaatsen van de turtle
Herhaling basiscommando’s
Turtle basiscommando’s:FD – BK – LT – RT – CS – ST - HT
PenopdrachtenPU – PD
Kleuropdrachten (RGB waarden)SETPC – SETSC – SETFC (FILL)
Programmeercommando’srepeat num [...] – make “VAR value
Positionering van de turtle
SETXY XPOS YPOSMaak een procedure “positie voor
de positionering van de turtle.
TO POSITIE :XPOS :YPOSPUSETXY :XPOS :YPOSPD
END
500
500X-as
Y-as
-500
-500
(0,0)
(x,y)
x
y
Procedure muur:
to muur
positie 0 0 (de turtle linksonder zetten)repeat 2 [ fd 150 rt 90 fd 200 rt 90 ]
raam ( het raam tekenen)
deur (de deur tekenen)
end
De muur wordt voorgesteld als een rechthoek
Hoe implementeren?
Procedure deur:
De deur zelf wordt voorgesteld als een rechthoek.
Hoe implementeren?
to deur :lengte
positie 130 0repeat 2 [ fd 80 rt 90 fd 50 rt 90 ]
deurklink (de deurklink tekenen)
end
Procedure deurklink
De deurklink wordt getekend als een cirkel.
Hoe implementeren?
Commando om een cirkel te tekenen is circle x
to deurklink
positie 170 40 (middelpunt van cirkel)circle 6 (een cirkel tekenen)
end
Procedure raam:
Het Raam is een rechthoek.
Hoe implementeren?
to raam
positie 30 40repeat 2 [ fd 40 rt 90 fd 70 rt 90 ]
end
Procedure dak:
RZ
sz
RZ
Het Dak is een driehoek.
Hoe implementeren?
TO DAKpositie 0 150rt 45 fd sqrt(20000)
rt 90 fd sqrt(20000)rt 135 fd 200
END
Probleem: Hoelang zijn de rechthoekzijden?Oplossing: Stelling van Pythagoras
RZ 2 + RZ 2 = SZ 2 -> RZ = sqrt ((SZ * SZ)/2) = sqrt ((200 * 200)/2)
Testen van de toepassing
We hebben de complexe toepassing stapsgewijs verfijnd en geïmplementeerd met behulp van verschillende procedures.
To huis
dak
muur
End
Samenvatting:
Groot probleem opsplitsen in deelproblemen.
Top down of stapsgewijze vereenvoudiging maakt probleem veel eenvoudiger!
Oefening:Stapsgewijze verfijning van een boot
1. Geef de topdown-strategie van dit probleem
2. Implementeer de deelprocedures
(0,0)
30
200
5
20
0
90
100
100
30
40
30° 30°
45°
30
30
40 40
Straal = 5
Stapsgewijze verfijning van de bootboot
zeilen
romp trapezium
mast rechthoek
kiel rechthoek
4 * raam cirkel
linkerzeil driehoek
rechterzeil driehoek
Taak: tekenen van een kerk Geef de top-down
strategie van dit probleem Implementeer de
verschilllende deelprocedures
Stapsgewijze verfijning van de kerkkerk
toren huis
muur
dak
kruis
rechthoek
portaal
venster
rechthoek
rechthoek
vierkant
driehoek
rechte
rechte
muur
venster vierkant
venster vierkant
venster vierkant
dak rechthoek
rechthoek
Uitbereiding (volgende les)
Het huis inkleuren met de kleuropdrachten De lengtes en breedtes van het huis
variabel maken