Jump to content
javsrt

Utilização da turtle

Recommended Posts

javsrt

boa tarde, eu tenho o seguinte problema, e gostaria de saber se voces me conseguiam dar uma ajuda a resolve-lo:

Um passeio aleatório é um conceito que permite modelizar vários processos que ocorrem na natureza. Admita que tem um agente que se movimenta de modo aleatório num mundo 2D. Suponha que a cada momento o agente decide deslocar-se ou para norte, ou para este, ou para sul ou para oeste, sendo que essa decisão é aleatória. Usando o módulo turtle simule um passeio aleatório do nosso agente, admitindo que o aseu mundo 2D tem a forma de uma grelha como a que obteve no exercício 5.8. O mundo é suposto ser finito.

a grelha que se fala no exercicio, é uma que o Turtle desenha, conforme a medida do lado que nos damos, e o numero de quadrados que pretendemos

obrigado

Share this post


Link to post
Share on other sites
javsrt

eu fiz a parte de desenhar a grelha,

na parte de definir onde e que ele começa o seu trajeto. porque sopostamente ele so pode andar sobre as linhas da grelha, é que eu n estou a conseguir

Share this post


Link to post
Share on other sites
thoga31

Mostra o que tens para sabermos como é a grelha, etc. Não adivinhamos.


Knowledge is free!

Share this post


Link to post
Share on other sites
javsrt

provavelmente n é a maneira mais pratica de a fazer, mas foi assim que consegui

import turtle
import random

def grelha(lado, quadrados, passeio):

   x=0
   y=0
   turtle.setworldcoordinates(0,0,lado,lado)
   turtle.goto(x,y)
   frente = lado/quadrados
   for i in range (4):
       turtle.forward(lado)
       turtle.left(90)

   for n in range(1,quadrados):
       turtle.forward(n*frente)
       turtle.left(90)
       turtle.forward(lado)
       turtle.penup()
       turtle.goto(x,y)
       turtle.right(90)
       turtle.pendown()
   turtle.left(90)
   for k in range(1,quadrados):
       turtle.forward(k*frente)
       turtle.right(90)
       turtle.forward(lado)
       turtle.penup()
       turtle.goto(x,y)
       turtle.left(90)
       turtle.pendown()

Edited by thoga31
Tags code + GeSHi

Share this post


Link to post
Share on other sites
thoga31

O melhor que te posso dizer é que tens de gerar 2 números aleatórios, x e y, e assim calcular a localização do ponto inicial. Sim, calcular.


Knowledge is free!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.