deixo aqui a minha abordagem ao problema do contrabandista (muito simples e eficaz) como alternativa ao programa do professor jap

grande problema e grandes sessoões em Coimbra!
EDIT: Enhanced!
- Código: Seleccionar Todos
from visual import *
scene.width=800
scene.height=600
scene.title='Problema do Contrabandista'
def distance(a,b):
return mag(vector(a.pos-b.pos))
criminal=sphere(color=color.red, make_trail=False)
police=sphere(pos=(-10,0,0), color=color.blue, make_trail=False)
def motion(k):
t=0
dt=0.01
criminal.vel=vector(0,1,0)
criminal.pos=(0,0,0)
police.pos=(-10,0,0)
while distance(criminal,police)>0.5:
rate(100)
t+=dt
criminal.make_trail=True
police.make_trail=True
criminal.pos+=criminal.vel*dt
police.vel=vector(criminal.pos-police.pos)
police.vel.mag=k*mag(criminal.vel)
police.pos+=police.vel*dt
criminal.make_trail=False
police.make_trail=False
print 'Distance: '+str(criminal.pos.y)
while True:
k=input('Insert velocity factor: ')
motion(k)