Tuto Swinnen : mouvement aléatoire ?

Utilisateur anonyme - 12 juin 2009 à 17:50
afranck64 Messages postés 5 Date d'inscription lundi 11 août 2008 Statut Membre Dernière intervention 17 novembre 2011 - 7 févr. 2010 à 19:29
Bonjour à tous,

J'étudie le langage python - c'est un loisir - avec le livre de Gérard Swinnen (comme beaucoup de francophones je pense ).

Je bloque sur l'exercice 8.28 (p. 104) : "...écrire un programme qui fonctionne de la manière suivante : une balle se déplace au hasard (...)"
C'est le "au hasard" qui me pose problème. J'ai bien essayé de bidouiller avec la fonction randrange() présentée avant dans le livre, mais sans succès.

Quelqu'un pourrait-il m'expliquer le "principe" d'un mouvement aléatoire en Python (ou me donner un exemple de code) ?

Merci d'avance

3 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
27 juin 2009 à 08:03
De quelle maniere as tu bidouillé randrange() ? C'est une bonne idée pourtant ...
0
Utilisateur anonyme
29 juin 2009 à 14:16
Finalement, il s'agit plus d'un problème de "géométrie" que d'un problème de Python...


Pour l'instant, ma balle se déplace en ligne et rebondit contre les
bords. J'ai juste affecté un coefficient aléatoire (généré avec
randrange()) au rebond, ce qui rend celui-ci imprévisible. Pour
l'exercice en question, et pour moi, c'est suffisant.


J'aurais bien aimé que le déplacement de la balle soit vraiment
aléatoire (changement de direction, courbes...) mais je ne sais pas comment faire . Je réessaierai plus tard... quand j'aurai aussi progressé en maths !
0
afranck64 Messages postés 5 Date d'inscription lundi 11 août 2008 Statut Membre Dernière intervention 17 novembre 2011
7 févr. 2010 à 19:29
spy_anf
essaie ce code

from random import *
from math import cos,sin

def rnd():
ang = randrange(0,360)
x = cos(ang)
y = sin(ang)
vec = (x,y)
return vec

"""A toi de faire se déplacer ta balle du vecter vec obtenu par rnd() """

bon à plus
0
Rejoignez-nous