Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#26 02-04-2020 08:46:24
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 987
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Bonjour,
il suffisait pourtant de relire les posts et les commentaires # des scrpits :
Depuis le module hasard importer tirage aléatoire d'un entier, tirage aléatoire d'un réel
p= tirage aléatoire d'un entier dans l'intervalle [1,3]
Si p vaut 1, alors :
a = choix_aléatoire d'un réel dans l'intervalle [0 ; 1[
Si a< 0.75 alors :
p prend la valeur 2
Sinon:
p prend la valeur 3
Sinon si p vaut 2, alors :
a = choix_aléatoire d'un réel dans l'intervalle [0 ; 1[
Si a< 0.75 alors :
p prend la valeur 3
Sinon:
p prend la valeur 1
Sinon, alors :
a = choix_aléatoire d'un réel dans l'intervalle [0 ; 1[
Si a< 0.75 alors :
p prend la valeur 1
Sinon:
p prend la valeur 21
Afficher les valeurs de p les unes à la suite des autres
En rouge, ce qui a été rajouté pour compléter l'algo fourni que j'ai écrit en vert.
---------------------------------------------------
Le from est pour importer les outils de tirage au sort à utiliser dont Python dispose mais qui ne sont pas immédiatement disponibles au lancement de Python.
Par exemple, sin, cos, tan sont dans le module math de Python.
Pour servir il faut les importer (de même pour $\pi$) depuis le module math :
from math import sin, cos, tan,pi
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#27 02-04-2020 10:25:45
- Emmadu29
- Invité
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
D’accord merci !
Pour la partie proba j’ai trouvé les résultats des deux premières questions mais j’ai plus de mal à faire l’arbre je sais pas par où m’y prendre
#28 02-04-2020 10:38:08
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
D’accord merci !
Pour la partie proba j’ai trouvé les résultats des deux premières questions mais j’ai plus de mal à faire l’arbre je sais pas par où m’y prendre
Salut,
montre nous tes réponses et explique l'arbre que tu ferais, on regardera à te dire ce qu'il faut corriger éventuellement.
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#29 02-04-2020 11:05:19
- Emmadu29
- Invité
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Pour la 1 :
p(A1)=0.33
Pour la 2 :
pb1(A2) =0,75
pc1(A2) =0,25
Est ce que la notation est correcte ?
Et pour l’arbre je ne sais pas ce que je dois mettre en premier
#30 02-04-2020 11:18:51
- Emmadu92
- Invité
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Et j’en reviens à l’algorithme mais si on regarde celui qui nous est donné il y a des Fin Si alors que dans le vôtre il n’y en a aucun
#31 02-04-2020 12:31:00
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Pour la 1 :
p(A1)=0.33
Pour la 2 :
pb1(A2) =0,75
pc1(A2) =0,25
Est ce que la notation est correcte ?
Et pour l’arbre je ne sais pas ce que je dois mettre en premier
Oui, ça a l'air OK, mais les notations ne sont pas top.
Perso, j'écrirais $\Pr(A_2/B_1)$ mais je ne sais pas si la notation d'une probabilité conditionnelle est au programme.
Pour l'arbre, je ne suis pas vraiment coutumier, mais voilà :
tu pars de l'origine O puis trois branches, de proba 1/3 chacune, pour aller vers A, B, ou C.
Puis tu es en A : une branche pour aller vers C, proba 3/4, une autre branche pour aller vers B, proba 1/4.
Puis tu continues sur la branche A->C et là, une branche pour aller vers B (3/4) une autre pour aller vers A(1/4).
Idem pour les sommets B et C après le premier tirage, puis tu développes tes branches.
C'est à ce moment-là que tu pourras calculer les probas de $A_2$, $B_2$ et $C_2$.
Dernière modification par freddy (02-04-2020 12:37:59)
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#32 02-04-2020 13:22:54
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 987
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Bonjour,
Content que tu poses la question : ça prouve que tu commences à réfléchir.... ^-^
Parce que je l'ai écrit pour Python...
Et alors ?
Et alors en Python, il n'y a pas de mention de "fin de bloc", donc de Fin Si...
On fait comment alors ?
On se base sur l' IN-DEN-TA-TION !!! i.e le décalage vers la droite (recommandé : 4 espaces)
Si tu les veux, les voilà :
Si p vaut 1, alors :
| a = choix_aléatoire d'un réel dans l'intervalle [0 ; 1[
| Si a< 0.75 alors :
| | p prend la valeur 2
| Sinon:
| | p prend la valeur 3
| Fin Si
Sinon si p vaut 2, alors :
| a = choix_aléatoire d'un réel dans l'intervalle [0 ; 1[
| Si a< 0.75 alors :
| | p prend la valeur 3
| Sinon:
| | p prend la valeur 1
| Fin Si
Sinon, alors :
| a = choix_aléatoire d'un réel dans l'intervalle [0 ; 1[
| Si a< 0.75 alors :
| | p prend la valeur 1
| Sinon:
| | p prend la valeur 21
| Fin Si
Fin Si
Afficher les valeurs de p les unes à la suite des autres
Tu la vois mieux l'indentation maintenant ?
En fait ce que je t'ai fourni est du pseudo-code il n'y a plus qu'à le traduire en Python.
J'ai vérifié l'énoncé, il n'est pas clair là-dessus...
Je te remets l'algorithme complété copie conforme (à 99%) du modèle fourni :
p $\leftarrow$ un nombre aléatoire égal à 1, 2 ou 3
Si p = 1 alors
| a $\leftarrow$ un nombre aléatoire de [0 ; 1[
| Si a < 0.75 alors
| | p $\leftarrow$ 2
| Sinon
| | p $\leftarrow$ 3
Sinon si p = 2 alors
| a $\leftarrow$ un nombre aléatoire de [0 ; 1[
| Si a < 0.75 alors
| | p $\leftarrow$ 3
| Sinon
| | p $\leftarrow$ 1
Sinon si p = 3 alors
| a $\leftarrow$ un nombre aléatoire de [0 ; 1[
| Si a < 0.75 alors
| | p $\leftarrow$ 1
| Sinon
| | p $\leftarrow$ 2
Fin Si
Ecrire la valeur de p
Penses-tu que tu étais incapable de le faire toi ?
Moi, je pense que non...
Satisfaite (ou remboursée) ?
@+
[EDIT]
@freddy : elle se paie notre tête...
Elle prend nos résultats et les soumet de l'autre côté.
J'ai été naïf...
Pour ma part, fin de la collaboration et je regrette beaucoup de m'être laissé berner et apitoyer par quelqu'un de malhonnête...
@Emmamachin : tu ne peux plus plaider la bonne foi : reste sur l'île maths (1er des 2 sites sollicité) et ne reviens pas.
Je pense aller là-bas leur signaler comment tu t'es comportée... Bravo : tu as décroché le gros lot !
https://www.ilemaths.net/sujet-parcouri … 45121.html
Dernière modification par yoshi (02-04-2020 13:33:55)
Arx Tarpeia Capitoli proxima...
Hors ligne
#33 02-04-2020 13:52:39
- freddy
- Membre chevronné
- Lieu : Paris
- Inscription : 27-03-2009
- Messages : 7 457
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Bonjour,
[…]
[EDIT]
@freddy : elle se paie notre tête...
Elle prend nos résultats et les soumet de l'autre côté.
J'ai été naïf...
Pour ma part, fin de la collaboration et je regrette beaucoup de m'être laissé berner et apitoyer par quelqu'un de malhonnête...
@Emmamachin : tu ne peux plus plaider la bonne foi : reste sur l'île maths (1er des 2 sites sollicité) et ne reviens pas.
Je pense aller là-bas leur signaler comment tu t'es comportée... Bravo : tu as décroché le gros lot !
https://www.ilemaths.net/sujet-parcouri … 45121.html
Salut l'ami,
ouaip, pas trop correcte. C'est une idiote ! Perso, je ferais un signalement à l'ile aux maths, ils vont apprécier moyen aussi je pense.
Bon, je vais arrêter là aussi, mon seul espoir est que ça en aide d'autres, ceux qui nous lisent en silence.
Je réfrène mon désir de détruire mes posts, je pense aux autres.
Pour info, on travaille sur ce qu'on appelle une chaîne de Markov, un des classiques des processus stochastiques. Intéressant.
De la considération des obstacles vient l’échec, des moyens, la réussite.
Hors ligne
#34 02-04-2020 16:21:37
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 987
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Re,
J'ai signalé le pb directement par mail : m'y inscrire juste pour ça aurait été disproportionné.
Je pense si ce mail ne file pas en Indésirables, qu'elle y sera bien reçue...
Je lis en effet dans leur FAQ :
Une demande identique sur plusieurs sites sera considérée comme un multipost et la discussion sera fermée.
Etant donné tous les désagréments que causent le multi-post, le non-respect de cette règle entraînera votre exclusion temporaire ou définitive du forum ! En effet, nous préférons privilégier les membres qui respectent le forum en posant correctement leurs questions plutôt que de perdre trop de temps avec ceux qui ne veulent pas comprendre comment fonctionne le forum.
Ça ne figure pas dans notre charte : on est top laxistes. Je vais voir avec Fred comment y remédier.
@+
Arx Tarpeia Capitoli proxima...
Hors ligne
#35 03-04-2020 11:55:23
- yoshi
- Modo Ferox
- Inscription : 20-11-2005
- Messages : 16 987
Re : Déplacement aléatoire d'une fourmi sur un tr. equilatéral
Bonjour,
J'ai récrit un code encore plus condensé...
J'ai donc 3 codes, pour l'édification des lecteurs en général et freddy en particulier, avec n essais de t déplacements...
1er code : naïf, calqué sur l'algo fourni
from random import randint, random
n,t=10,40
for j in range(1,n+1):
p= randint(1,3)
print(" Essai n°:",j+1)
print(p,end=" ")
for i in range(1,t+1):
if p==1:
a=random()
if a < 0.75:
p=2
else:
p=3
elif p==2 :
a=random()
if a < 0.75:
p=3
else:
p=1
else:
a=random()
if a < 0.75:
p = 1
else:
p = 2
print (p, end =" ")
print()
print()
2e code : pour éviter de répéter 3 fois le même bloc :
from random import randint,random
n,t=10,40
for j in range(1,n+1):
print(" Essai n°:",j)
p=randint(1,3)
print(p,end=" ")
for i in range(1,t+1):
a=random()
if a<0.75:
p=p+1
if p==4:
p=1
else:
p=p-1
if p==0:
p=3
print(p,end=" ")
print()
print()
Et le petit dernier, optimisé, mais nettement moins clair pour un profane.
from random import randint,random
n,t=10,40
for j in range(n+1):
print(" Essai n°:",j)
p=randint(1,3)
print(p,end=" ")
for i in range(1,t+1):
sens,correctif=-1+2*(random()<0.75),0
correctif= 3 if (sens == -1 and p==1) else -3*(sens==1 and p==3)
p+=sens+correctif
print(p,end=" ")
print("\n")
@+
[EDIT]
Et un 4e code plus court encore mais plus clair que le précédent :
from random import randint,random
n,t=4,40
for j in range(1,n+1):
print(" Essai n°:",j)
p=randint(1,3)
print(p,end=" ")
for i in range(1,t+1):
p=p%3+1 if random()<0.75 else p-1+3*(p==1)
print(p,end=" ")
print("\n")
Sorties :
Essai n°: 1
1 2 1 2 3 2 1 2 3 2 3 1 2 1 2 1 2 3 2 3 1 3 1 2 3 1 3 1 2 3 2 3 2 1 3 1 2 1 2 3 1
Essai n°: 2
2 3 1 2 1 2 3 1 2 3 1 2 3 1 2 1 2 3 1 2 1 2 1 2 1 2 1 2 3 1 2 1 2 3 1 2 3 1 3 1 2
Essai n°: 3
2 3 1 2 3 2 3 1 2 3 2 3 2 3 1 2 3 1 3 1 3 2 3 1 2 3 2 1 2 3 1 2 3 1 2 3 1 2 3 1 2
Essai n°: 4
2 3 1 3 1 2 1 2 3 1 2 3 1 2 1 3 1 2 1 3 2 3 1 3 1 3 1 2 3 1 2 3 2 3 2 3 1 2 3 1 2
Dernière modification par yoshi (04-04-2020 20:58:26)
Arx Tarpeia Capitoli proxima...
Hors ligne