#!/usr/bin/env python # coding: utf-8 # ![En tête general](https://raw.githubusercontent.com/PythonLycee/PyLyc/master/img/En_tete_general.png) # # # © Copyright Franck CHEVRIER 2019-2022 https://www.python-lycee.com.
# Les activités partagées sur Capytale sont sous licence Creative Commons. # # Pour exécuter une saisie Python, sélectionner la cellule et valider avec SHIFT+Entrée. # # # Lancers d'une pièce # #
#
# #
# On propose à un joueur de lancer trois fois d’affilée une pièce de monnaie équilibrée. #

# La règle du jeu est la suivante : #
# #
#
#
# # # __1. Ecrire une fonction Python piece qui simule le lancer d’une pièce de monnaie, et renvoie 1 (ou True) si le résultat est pile et 0 (ou False) sinon.__ # # Aide Python : A l’aide de l’appel from random import randint, on peut utiliser l’instruction randint(a,b) qui renvoie aléatoirement un entier compris entre a et b. # # In[ ]: from random import randint # Ecrire la fonction # In[ ]: # Tester la fonction # __2. Effectuer les instructions suivantes, et expliquer leur lien avec la situation étudiée.__ # # In[ ]: lancers=[ piece() for k in range(3) ] lancers # In[ ]: sum(lancers) # __3. On considère la fonction Python jeux ci-dessous, qui reçoit un entier N en argument et qui renvoie une liste de trois valeurs.__ # # __Indiquer ce que représentent, dans le cadre de l’énoncé, cet entier N et les trois valeurs de la liste renvoyée.__ # # # In[ ]: def jeux(N): res=[0,0,0] for i in range(N): lancers=[piece() for k in range(3)] nb_piles=sum(lancers) if nb_piles==3: res[0]=res[0]+1 elif nb_piles==2: res[1]=res[1]+1 else: res[2]=res[2]+1 return res # In[ ]: # Tester la fonction #
# L’organisateur du jeu demande une mise de 1€ pour participer au jeu. #
Si le joueur gagne, il reçoit 4€, et si la partie est nulle, il est remboursé de sa mise.
#
# __4. Ecrire une fonction gain_algebrique qui reçoit en argument une liste L (qui sera fournie par la fonction jeux) et qui renvoie le gain algébrique du joueur (le gain algébrique du joueur s’obtient en soustrayant la mise du joueur à la somme qu’il reçoit).__ # In[ ]: # Ecrire la fonction # In[ ]: # Tester la fonction # __5. Dans cette question, on suppose que L est une liste générée par la fonction jeux.__ # __Que représente le résultat de la saisie ci-dessous?__ # # In[ ]: L=jeux(10) #on peut adapter la valeur de N sum(L) # __Tester la fonction gm ci-dessous. Que représente le résultat de la saisie proposée ?__ # In[ ]: def gm(L): return gain_algebrique(L)/sum(L) gm(L) # __Tester avec $10$, $100$ puis $10000$ parties. Le jeu semble-t-il favorable au joueur ?__ # # # In[ ]: # Effectuer les saisies nécessaires # __6. Calculer les probabilités que le joueur gagne, que la partie soit nulle, puis que le joueur perde.__ # # __Stocker ces $3$ valeurs, dans cet ordre, dans une liste nommée Proba.__ # # __Calculer la valeur gm(Proba) et indiquer la valeur obtenue.__ # # In[ ]: # Créer la liste Proba # In[ ]: # Exécuter la cellule pour effectuer l'appel à la fonction gm gm(Proba) # __7. Ecrire une fonction Python ecart qui reçoit en argument la liste L de répartition des résultats d’une série de parties et renvoie l’écart entre le gain moyen de ces parties et la valeur gm(Proba).__ # In[ ]: # Ecrire la fonction # __Tester pour des listes de longueur $100$,$10000$,$100000$,$1000000$… Que constate-t-on ?__ # In[ ]: # Effectuer les saisies nécessaires # ![Bernoulli](https://raw.githubusercontent.com/PythonLycee/PyLyc/master/img/Bernoulli.jpg) # #
Jacques Bernoulli (1654-1705) est le premier a avoir démontré la loi des grands nombres.
# © Copyright Franck CHEVRIER 2019-2022 https://www.python-lycee.com.
# Les activités partagées sur Capytale sont sous licence Creative Commons. #

# Dernière modification de l'activité : Juillet 2022