Bonjour,
J'ai besoin d'aide pour faire un algorithme en pseudo-code sur le jeu du juste prix : je dois choisir un nombre et l'ordinateur doit le deviner. L'ordinateur à 7 essais maximum pour un nombre entre 0 et 100 ; 10 essais maximum pour un nombre entre 0 et 1 000 ; 20 essais maximum pour un nombre entre 0 et 1 000 000.
Merci d'avance pour vos réponses !
Bonjour, réfléchis déjà à ce que tu ferais toi si tu avais à deviner le nombre en question, quelle serait ta stratégie de choix des nombres ?
(je suppose qu'à chaque fois celui qui a choisi le nombre répond si la proposition est au dessus ou en dessous du nombre choisi ?)
Je ferais ça :
Début
Dire "choisir un nombre entre 0 et 1 000 000"
Demander si n < 100
Si oui alors 7 essais ➡️ deviner nombre
Sinon
Demander si n < 1000
Si oui alors 10 essais ➡️ deviner nombre
Sinon
n < 1 000 000 = 20 essais ➡️ deviner nombre
Merci encore
Bonjour
quoi que ...
c'est un (très petit) début
Début
Dire "choisir un nombre entre 0 et 1 000 000"
Demander si n < 100
Si oui alors 7 essais ➡️ nombre max d'essais autorisés
Sinon
Demander si n < 1000
Si oui alors 10 essais ➡️ nombre max d'essais autorisés
Sinon
n < 1 000 000 = 20 essais ➡️ nombre max d'essais autorisés
jusqu'ici c'est "à peu près correct"
mais ensuite ?
que va faire le programme pour réussir à deviner ?
il va proposer des valeurs (lesquelles ? comment le programme va-t-il choisir ces valeurs là ?
et on (l'humain) devra répondre si c'est plus petit, plus grand ou pile dessus
et si il y a eu trop d'essais par rapport au nombre maximum d'essais autorisés, alors le programme devra avouer qu'il a perdu.
exemple de dialogue possible lors de l'exécution du programme :
l'ordinateur : "choisir un nombre entre 0 et 1 000 000"
(l'humain : "c'est fait")
l'ordinateur : "est il < 100 ?"
l'humain : "non"
l'ordinateur : "est il < 1000 ?"
l'humain : "oui"
l'ordinateur : "brr, je n'ai droit qu'à 10 essais ! 1er essai, je propose 500"
l'humain : "trop petit"
l'ordinateur : "2eme essai, je propose 600"
l'humain : "trop petit"
l'ordinateur : "3eme essai, je propose 700"
l'humain : "trop petit"
l'ordinateur : "4eme essai, je propose 800"
l'humain : "trop grand"
...
l'ordinateur : "10eme essai, je propose xxx"
l'humain : "trop petit"
l'ordinateur : "j'ai échoué "
toute la question est de déterminer comment l'ordinateur va choisir les nombres qu'il propose
au hasard ? avec des calculs, lesquels ?
pour cela "se mettre à la place de l'ordinateur"
Bonjour,
je pense qu'il faut que l'ordinateur fasse des calculs pour trouver le nombre mais je ne trouve pas lesquels 🤷
quels "calculs" (stratégie plutôt) ferais tu toi pour jouer à ce jeu et tenter de deviner le nombre pensé par un camarade ?
c'est ça la question et c'est à ça qu'il faut réfléchir.
et après tout on ne te demande pas une stratégie qui marche à tous les coups !! mais au moins une stratégie ...
Bonjour,
Mon professeur m'a dit qu'il ne fallait pas forcément que l'ordinateur est que 7 essais ou 10..
Et je ne trouve pas de stratégie..
une stratégie possible est de tirer au sort "intelligemment"
intelligemment veut dire que si avant on (l'humain) a répondu que 150 était trop petit, il est inutile de proposer (que le programme choisisse de proposer) moins que 150 !
bref on doit maintenir à jour au fur et à mesure une borne inférieure (au départ 0 ou 100 ou 1000) et une borne supérieure (au départ 100 ou 1000 ou 1000000) entre lesquelles on tire au hasard la proposition.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :