Les sauts de la puce

Une puce se déplace sur la ligne suivante en sautant au hasard d'une case ou de deux.
On observe sa position après 6 sauts.
Justifier que la case minimum qu'on peut atteindre est la case 6 et que la case maximum que l'on peut atteindre est la case 12.
N° case | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|
* :puce |
\(\color{magenta}{1) Avec un tableur :}\)
a) Créer une feuille de calcul analogue à la feuille ci-dessous et permettant de simuler au moins 100 fois l'expérience :
b) Quelle est la fréquence d'arrivée dans chacune des cases pour votre simulation ?
\(\color{magenta}{2) Avec un programme en Python :}\)
a) Compléter le programme suivant pour faire afficher la position de la puce après 6 sauts :
from random import *
def position():
position=.......
for i in range(........):
position=position+randint(1,2)
return position
print(position())
b) Exécuter le programme 10 fois et compléter le tableau :
Issue | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
---|---|---|---|---|---|---|---|
Fréquence |

Résultat 6 : 1 seule branche (1,1,1,\(\cdots\), 1)
\(p("la fourmi se trouve à la case 6")=(\frac{1}{2})^6=\frac{1}{64}\)
c) Compléter le programme suivant pour qu'il répète l'expérience 100 fois et qu'il comptabilise les arrivées à la case 9.
from random import *
def position():
position=....
for i in range(....):
position=position+randint(1,2)
return position
def arrivee():
arrivee9=0
for i in range(100):
resultat=position()
if resultat==.....:
arrivee9=arrivee9+1
return arrivee9
print(arrivee())
\(\color{magenta}{\textbf{3) Travail à faire : } }\)
Compléter le programme pour qu'il comptabilise toutes les valeurs d'issues
Complément :
from random import *
def position():
position=0
for i in range(6):
position=position+randint(1,2)
return position
def arrivee():
arrivee1=0
arrivee2=0
arrivee3=0
arrivee4=0
arrivee5=0
arrivee6=0
arrivee7=0
arrivee8=0
arrivee9=0
arrivee10=0
arrivee11=0
arrivee12=0
for i in range(100):
resultat=position()
if resultat==6:
arrivee6=arrivee6+1
if resultat==7:
arrivee7=arrivee7+1
if resultat==8:
arrivee8=arrivee8+1
if resultat==9:
arrivee9=arrivee9+1
if resultat==10:
arrivee10=arrivee10+1
if resultat==11:
arrivee11=arrivee11+1
if resultat==12:
arrivee12=arrivee12+1
return (arrivee6/100,arrivee7/100,arrivee8/100,arrivee9/100,arrivee10/100,arrivee11/100,arrivee12/100)
print(arrivee())