P1
Os programas são construídos e são executados. Quando os desenvolvemos através de um def eles podem ter argumentos que são nomes. Aos argumentos que aparecem nas definições chamamos parâmetros formais. Quando executamos um programa recorremos ao nome do programa colocando entre parênteses expressões que quando avaliadas correspondem a objectos. Essas expressões são designadas por parâmetros reais.
1.
def
xpto(x,y):
2.
return
2
*
x
*
y
3.
4.
print
(xpto(
4
,
8
))
Determinar se a distância entre dois pontos é inferior a um dado limiar consiste em calcular a distância e comparar com o limiar.
01.
import
math
02.
03.
def
perigo(x1,y1,x2,y2,limiar):
04.
""" Determina se a distância entre dois pontos é inferior a um dado limiar."""
05.
dist
=
math.sqrt((x1
-
x2)
*
*
2
+
(y1
-
y2)
*
*
2
)
06.
if
dist < limiar:
07.
return
True
08.
else
:
09.
return
False
Este programa tem duas partes. A primeira consiste em construir um programa que permita desenhar um rectângulo, controlando a posição, a orientação o comprimento dos lados e a cor. à semelhança do que foi feito nas aulas para o caso dos polígonos regulares, temos uma solução simples.
01.
import
turtle
02.
03.
def
vela(posx, posy, orienta, lado1 ,lado2, cor):
04.
turtle.penup()
05.
turtle.goto(posx,posy)
06.
turtle.pendown()
07.
turtle.setheading(orienta)
08.
turtle.fillcolor(cor)
09.
turtle.begin_fill()
10.
for
i
in
range(
2
):
11.
turtle.forward(lado1)
12.
turtle.left(
90
)
13.
turtle.forward(lado2)
14.
turtle.left(
90
)
15.
turtle.end_fill()
16.
turtle.hideturtle()
1.
def
moinho(posx, posy,orienta, lado1, lado2, cor, n,afastamento):
2.
""" desenha as velas de um moinho"""
3.
angulo
=
orienta
4.
for
i
in
range(n):
5.
vela(posx,posy, angulo, lado1,lado2,cor)
6.
angulo
=
angulo
+
afastamento
7.
turtle.hideturtle()
8.
turtle.exitonclick()