domingo, 18 de outubro de 2009

Problema 3.7

Continuemos com a nossa tartaruga mas agora para fazer um desenho por junção de pontos gerados aleatoriamente.


import cTurtle
import random

def gera_coordenadas(numero):
"""
Gera aleatoriamente um numero de coordenadas.
Cada coordenada será um par ordenado representado por um tuplo.
"""
lista = []
for indice in range(numero):
x = random.randint(-100,100)
y = random.randint(-100,100)
lista.append((x,y))
return lista

def figura(lista_coordenadas):
"""
Desenha uma figura unindo as coordenadas da lista.
"""
tartaruga = cTurtle.Turtle()
tartaruga.up()
ponto_inicial = lista_coordenadas[0]
tartaruga.goto(ponto_inicial)
tartaruga.down()

for i in range(1,len(lista_coordenadas)):
tartaruga.goto(lista_coordenadas[i])
tartaruga.goto(ponto_inicial) # -- fecha desenho

tartaruga.ht()


Alguns comentários. Em primeiro lugar usámos um programa para gerar pontos de modo aleatório. No desenho da figura, criámos um objecto do tipo tartaruga (linha 20). Este modo de criar um objecto pode ser usado com outros tipos de objectos. Por exemplo podemos usar algo como minha_lista = list(). Tipicamente usamos uma definição com o nome do tipo e sem argumentos. quando falarem de programação orientada aos objectos ficarão a saber que se trata de usar o construtor de uma classe. De seguida posicionamos a tartaruga e preparamos a caneta (linhas 21 a 24). Finalmente desenhamos, sem esquecer de fechar a figura (linha 28). Eis uma hipótese de figura.



Sem comentários:

Enviar um comentário