ALgobox jeu du plus ou moins inversé

Oceoce -  
 Oceoce -
Bonjour,
Je suis dans un AP où je ne suis même pas sensé être à cause de ma moyenne et je dois faire un Algorithme sur Algobox qui consiste à ce que ce soit l'ordinateur qui doit trouver un nombre mais ça fait une semaine que je n'y arrive pas :/
Quelqu'un pourrait-il m'aider ?
Merci bien ^^

3 réponses

valouvalivalo Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   38
 
Bonjour,
quelle nombre doit être trouvé et par quel moyen ?
0
Oceoce
 
Bonjour,
C'est nous qui devons garder un nombre dans notre tête et il doit nous proposer un nombre, (le premier sera toujours 50 d'ailleurs ) on devra lui répondre par -1 , 0 ou 1
-1 etant plus petit
0 étant le nombre dit mystère
Et 1 plus grand
En fonction de ces trois réponses, il devra essayer de trouver le nombre mystère et continuer tant qu'il n'a pas trouvé.
Est ce qu'il faut plus de détails ?
0
valouvalivalo Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   38
 
Par exemple


x (valeur a afficher)
y (entré utilisateur)
x = 50
y = 1
TANT_QUE (y!=0)
AFFICHER x
LIRE y
SI (x==1)
x = ALEA_ENT(x,x+10)
FIN_SI
SI (x!=1 ET x!=0)
x = ALEA_ENT(x,x-10)
FIN_SI
FIN_TANT_QUE
AFFICHER x
0
Oceoce
 
Ça doit-être ça et X est un aléa entre 1 et 100 et ce sont des nombres entiers
0
Oceoce
 
Je peux montrer celui de base soit celui à inverser si ça peut aider mais moi je vois pas :/
0
valouvalivalo Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   38
 
tu peux aussi essayer tout simplement en incrémentant et en décrémentant la valeur x
0
Oceoce
 
Ça qui veut dire ?
0
valouvalivalo Messages postés 131 Date d'inscription   Statut Membre Dernière intervention   38
 
incrementation : x=x+1
decrementation : y=y-1
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Le meilleur algorithme pour ce problème c'est la recherche dichotomique.

Si le nombre est entre un minimum et un maximum donnés, l'ordinateur choisi le nombre au milieu, c'est à dire (min+max)/2

Si c'est plus, alors le milieu devient le minimum.
Si c'est moins, alors le milieu devient le maximum.

Et on recommence jusqu'à ce que ce soit égal.

Exemple, le nombre à deviner est 42 entre
min=0, max=100, milieu=50, c'est moins
min=0, max=50, milieu=25, c'est plus
min=25, max=50, milieu=37, c'est plus
min=37, max=50, milieu=43, c'est moins
min=37, max=43, milieu=40, c'est plus
min=40, max=43, milieu=41, c'est plus
min=41, max=43, milieu=42, gagné
0
Oceoce
 
C'est un peu ça qu'il faut faire mais je sais pas comment le mettre sur algobox :/
0
Oceoce
 
Je suis vraiment nulle en Algorithme
0