Bonjour il faut que je remplisse ces programmes en maths j'y arrive vrm pas.. SI quelqun a la gentillesse de m aider..
Situation
Le jour de la Fête de la science, des étudiants organisent un jeu : le joueur lance 3 dés cubiques (un rouge, un vert, un bleu) bien équilibrés dont les faces sont numérotées de 11 à 66. S’il arrive à construire un triangle (non aplati) dont les côtés ont pour mesure les valeurs des faces obtenues, il gagne, sinon il perd.
Programmation d'une partie
La fonction suivante prend en paramètres trois nombres entiers correspondant aux valeurs des faces des trois dés et renvoie 11 si la partie est gagnée et 00 sinon.
Compléter les lignes 2,3,4,5 pour rendre cette fonction opérationnelle.
Entrée[1]:
def partie(d1, d2, d3) :
sommeDesTroisCotes = ... #calculer la somme des 3 côtés
grand = max(...,...,...) #grand est le plus grand côté
#déterminer un moyen de faire la somme des deux autres côtés
sommeDesDeuxAutresCotes = ...
if grand < sommeDesDeuxAutresCotes:
return 1
else :
return 0
# Tests sur des exemples votre programme
print(partie(2,3,4))
print(partie(1,2,3))
print(partie(1,1,4))
1
0
0
Calcul de la probabilité de gagner
À l'aide de boucles imbriquées, on veut calculer le nombre de toutes les issues possibles (total) lors du jeu et le nombre de celles qui permettent de gagner (favorable). Le quotient favorable/total donne alors la probabilité de gagner lors d'une partie.
Il faut compléter le programme pour trouver la probabilité de gagner à ce jeu.
Entrée[ ]:
favorable, total = 0, 0
for d1 in range(1,7) :
for d2 in range(1,7) :
for d3 in range(1,7) :
if ..... == ...
favorable = ...
total = ...
print(favorable, total)
print(favorable/total)
Quelle est la probabilité de gagner à ce jeu ?
Entrée[ ]:
Calcul de la fréquence des parties gagnées dans un échantillon simulé
On calcule la fréquence des parties gagnées sur un échantillon de parties simulées. La fonction echantillon prend en paramètre l'entier (taille de l'échantillon) et renvoie la proportion de parties gagnées sur cet échantillon.
Pour simuler un lancer de dé, on utilise une fonction randint(1,6) qui donne une valeur entière de manière aléatoire de 1 à 6, chaque valeur ayant la même probabilité d'être obtenue.
Comlétez le programme pour le rendre fonctionnel.
Entrée[ ]:
from random import randint
def echantillon(n) :
gagne = ... # compteur de partie gagnée sur les n simulées
for i in range(...) :
d1 = randint(1,6)
d2 = randint(1,6)
d3 = randint(1,6) # attribue les valeurs du dé de manière aléatoire
if partie(d1,d2,d3)==... :
gagne = gagne + 1 # incrémente le compteur en cas de gain
return ..... # doit retourner la fréquence des parties gagnées
print(echantillon(10))
print(echantillon(100))
print(echantillon(1000))
print(echantillon(1000))
Fluctuation de la fréquence des parties gagnées dans plusieurs échantillons simulés
Le programme suivant affiche des listes contenant les proportions (ou fréquences) de parties gagnées pour 10 échantillons de taille 10, puis 10 échantillons de taille 100 et enfin 10 échantillons de taille 1000.
Entrée[ ]:
print([echantillon(10) for i in range(10)])
print([echantillon(100) for i in range(10)])
print([echantillon(1000) for i in range(10)])
• Observer
Que constate-t-on dans les listes précédentes ?
Entrée[ ]:
La fonction ci-dessous permet de réaliser =100 simulations différentes d'échantillons de =1000 parties.
On a représenté par des points les fréquences obtenues :
• en vert les fréquences qui sont dans l'intervalle [−1√;+1√][�−1�;�+1�],
(je vous mets en photo l'intervale car on comprend rien)
• en rouge celles qui ne le sont pas.
Entrée[2]:
from matplotlib import pyplot as plt
from math import sqrt
n, p = 100, 111/216
N = 100
mini, maxi = p-1/sqrt(n), p+1/sqrt(n)
plt.figure()
for repet in range(N) :
f = echantillon(n)
if mini < f < maxi :
plt.plot(repet, f, "go")
else :
plt.plot(repet, f, "ro")
plt.plot([0,repet],[p, p], "m--")
plt.axis([0,N,0,1])
plt.show()
Traceback (most recent call last):
File " ", line 10, in
NameError: name 'echantillon' is not defined
• Tester le programme pour différentes valeurs de .
• Compléter le programme précédent pour calculer le nombre de cas où l'écart entre la fréquence de gagner au cours de parties et la probabilité est inférieur ou égal à 1√1� (on prendra toujours =100 échantillons). En tirer la fréquence des points verts sur chaque simulation.
• Que constatez-vous ?
Entrée[ ]: