Esercizi di Logo

Riprodurre il seguente disegno

casa disegnata con logo

Soluzione

        
to go_home
pu
home
;posiziono il cursore
rt 90
pd
end

to main

;campi customizzabili
make "larghezza_casa 350
make "altezza_casa 150
make "rientro_tetto 50
make "larghezza_rientro_finestra 15
make "altezza_rientro_finestra 70
make "larghezza_porta 50
make "altezza_porta 90
make "larghezza_finestra 35

;campi calcolati
make "larghezza_tetto :larghezza_casa+:rientro_tetto*2
make "rientro_porta :larghezza_casa/2-:larghezza_porta/2 

;disegno la base
go_home
rettangolo :larghezza_casa :altezza_casa

;disegno la porta
go_home
setpos (list :rientro_porta 0)
rettangolo :larghezza_porta :altezza_porta

;disegno la finestra
go_home
pu
setpos (list :larghezza_rientro_finestra :altezza_rientro_finestra)
pd
rettangolo :larghezza_finestra :larghezza_finestra

;disegno il tetto
go_home
pu
setpos (list -:rientro_tetto :altezza_casa)
pd
triangolo_rettangolo_isoscele :larghezza_tetto

end

to rettangolo :base :altezza
repeat 2 [
fd :base lt 90
fd :altezza lt 90]
end

to triangolo_rettangolo_isoscele :base
make "lato sqrt ((power :base 2)/2) 
fd :base
lt 135
fd :lato
lt 90
fd :lato

end