Bonjour, j'aurai besoin d'aide pour cet exercice que je n'arrive pas à faire, je suis complètement bloquer, ce n'est pourtant pas faute d'avoir chercher..
Exercice 3 :
Le jeu du 20, organisé par une association, se déroule de la manière suivante : le joueur mise 5 euros et lance un dé cubique équilibré plusieurs fois. Il additionne les numéros obtenus et s'arrête lorsque cette somme a atteint 20.
Si le total de ses points atteint ou dépasse 20 en un maximum de 5 lancers, alors il gagne et l'organisateur du jeu lui donne 10 euros.
Dans le cas contraire, le joueur perd et l'organisateur du jeu ne lui donne rien.
L'objectif de ce problème est de simuler ce jeu pour savoir si l'association va être gagnante.
Partie A : avec un seul joueur : 1) Soit N le nombre de fois que le joueur lance le dé.
Montrer que 4 < ou = N < ou = 20
2) Ecrire un Algorithme qui simule les lancers pour un joueur, calcule et affiche le nombre de
lancers du dé qui a été nécessaire et affiche le gain (+5 ou -5) du joueur.
Partie B : avec plusieurs joueurs :
1) Est-il possible que le joueur gagne ? Est-il possible que les dix premiers joueurs gagnent ? Les 100 000 premiers ?
2 ) Modifier l'algorithme pour qu'il simule les lancers de 100 joueurs et qu'il donne le gain moyen par joueur pour l'association après le passage des 100 joueurs . Noter l'algorithme sur la calculatrice .
Merci d'avance
Je t'ai préparé un sympathique tutoriel normalement complet et expliqué au mieux MAIS QUI FONTIONNE SUR LE LOGICIEL ALGOBOX (je ne sais pas faire sur calculatrice, tu peux refaire cet algorithme sur Algobox et l'imprimer si ton prof te le demande. Si tu ne comprends pas tout, que tu n'arrive pas a la refaire ou que tu n'en as pas simplement pas envie, tu peux me donner ton e mail et je pourrais te l'envoyer directement.
Pour faire ça, il faut déjà savoir simuler les résiltats du dé.
pour ça, on doit créer une variable "score" de type nombre
Je pense qu'il y a 2 manières de resoudre ça:
-si 5 lancers suffisent a atteindre 20, le joueur gagne
-si il atteint 20 avec 5 lancers ou moins, le joueur gagne
PARTIE A:
Comme c'est la 2eme que tu veux utiliser, il va falloir créer une nouvelle variable "N" de type nombre
Pour simuler un seul lancer, la formule est: "dé PRENDS_LA_VALEUR floor(random()*6+1)"
cette formule va affecter au lancer une valeur entière comprise entre 1 et 6.
Donc pour cinq dés, le score est égale à
"floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)"
En fait, on additionne 5 fois la valeur du dé (et on ne fait pas "(floor(random()*6+1))*5" car cela impliquerais que les 5 dés aurait la meme valeur, ce qui n'est pas vrai.
Apres avoir crée un variable "score" qui sera égale à la longue formule donnée plus haut, on va créer une condition qui va être remplie si le score dépasse 20
ce qui devrai ressembler à ceci:
DEBUT_ALGORITHME
score PRENDS_LA_VALEUR floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)
SI (score>=20) ALORS
AFFICHER "Vous avez gagné!"
AFFICHER "Vous gagnez 5€"
SINON
AFFICHER "vous avez perdu! Vous perdez 5€"
FIN_ALGORITHME
PARTIE B:
Pour que l'algorithme calcule ces données statistiques, il faut créer une boucle et un compteur.
Pour parler plus simplement, on va créer une boucle POUR ALLANT_DE A.
pour cela, on va créer deux nouvelle variable. la permiere variable "i" de type nombre, et la deuxieme que l'on va appeler "joueurs" va controler le nombre des joueurs qui vont jouer a ce jeu.
et donc créer la boucle:
POUR i ALLANT_DE 1 à joueur,
DEBUT BOUCLE
ICI, ON VA FAIRE UN COPIER/COLLER DE L'ALGORITHME PLUS HAUT
FIN BOUCLE
esuite, on va creer le compteur "c" qui va compter (comme son nom l'indique) le nombre de fois que le joueur gagne
Pour résumer, l'algorithme ressemblera à ça:
DEBUT_ALGORITHME
POUR i ALLANT de 1 à joueur
DEBUT_BOUCLE
score PRENDS_LA_VALEUR floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)+floor(random()*6+1)
SI (score>=20) ALORS
AFFICHER "Vous avez gagné!"
AFFICHER "Vous gagnez 5€"
c PRENDS_LA_VALEUR c+1
SINON
AFFICHER "vous avez perdu! Vous perdez 5€"
FIN_BOUCLE
AFFICHER c
FIN_ALGORITHME
Ainsi cet algorithme vous indiquera le nombre de joueurs qui ont gagnés par rapport aux joueurs ayant essayés.
Ensuite, pour calculer les gains moyens on multiplie la probabilité de gagner par les gains gagnés lorsque on gagne.
donc, les gains moyens des joueurs sont égaux à 5*(c/joueurs)
et les gains moyens de l'association sont égaux à 5*((joueurs-c)/joueurs)
Pour integrer ceci a l'algorithme, on va creer deux nouvelles variables "GainJ" et "GainA"
donc apres la ligne "afficher c", on vas ecrire : "GainJ PRENDS_LA_VALEUR 5*(c/joueurs)"
"GainA PRENDS_LA_VALEUR 5*(((joueures-c)/joueurs)
Fin de ce (petit) tuto!
J'ai un petit soucis, l'algorithme n'affiche pas le nombre de lancers du dé qui a été nécessaire. Il affiche seulement le gain obtenu ...
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :