Sagot :
Réponse :
Voir programme en pièce jointe.
Nosdevoirs n'accepte pas le .py, c'est bien un programme python même s'il termine par .txt. Pour le lancer, il faut juste le renommé le pour qu'il finisse par .py
Explications :
Si j'ai bien compris, on n'est pas obligé de choisir un nombre au départ.
Ainsi, pour forcer le joueur a poser le plus de question possible, je propose cet algorithme :
Tout d'abord, on initialise 2 variables : minimum et maximum qui contiendront l'intervalle sur lequel peut se trouver le nombre mystère.
Puis à chaque fois que l'utilisateur rentre un nombre :
- S'il est plus petit que le minimum, on renvoie "plus grand".
- S'il est plus grand que le maximum, on renvoie "plus petit".
- Si le nombre est compris dans l'intervalle, on regarde lequel de "plus petit" ou "plus grand" donne le plus grand nombre de possibilités...
Exemple : si le nombre est entre 1 et 10, et que le joueur rentre 7. On a plus intérêt à dire plus petit.
Et donc en fonction du plus avantageux, on affine les variables minimum et maximum. Exemple : Nombre entre 1 et 10, entrée 7 : "plus petit", nouveau maximum à 6. Si on avait entré 3 : "plus grand", nouveau minimum à 4.
Enfin, dans le cas où le nombre entré est égale au minimum et au maximum, le joueur a gagné.
Voir programme python en pièce jointe.