Salut à tous
voici ce que je dois programmer
Programmez un petit jeu où vous devrez découvrir un nombre entre 1 et 100 choisi au hasard par l'ordinateur grâce à l'instruction randint(1,100) isuue du module random. Vous proposerez un nombre et l'ordinateur vous répondra "Trop grand" ou "Trop petit" jusqu'à ce que vous ayez trouvé le bon nombre, auquel cas il vous dira "Bravo". Il faudra aussi écrire à la fin le nombre de tentatives.
voici ce que j'ai fait :
import random
nombre = input("Devinez le nombre:")
nombrsecret = random.randint(100,500)
cpt=1
while nombre<nombresecret or nombre>nombresecret:
if nombre<nombresecret:
print "Plus grand!"
elif nombre>nombresecret:
print "Plus petit!"
nombresecret = input("essaye encore!:")
cpt=cpt+1
print "Gagné en %d coup(s)" %(cpt)
est ce correct ?
merci d'avance
nombre = input("Devinez le nombre:")
nombrsecret = random.randint(1,100)
cpt=1
while nombre<nombresecret or nombre>nombresecret:
if nombre<nombresecret:
print "Plus grand!"
elif nombre>nombresecret:
print "Plus petit!"
nombresecret = input("essaye encore!:")
cpt=cpt+1
print "Gagné en %d coup(s)" %(cpt)
je l'ai un peu améliorer
import random
nombre = input("Devinez le nombre:")
nombrsecret = random.randint(100,500)
cpt=1
while nombre<nombresecret or nombre>nombresecret:
if nombre<nombresecret:
print( "Plus grand!")
elif nombre>nombresecret:
print ("Plus petit!" )
nombresecret = input("essaye encore!:")
cpt=cpt+1
print "Gagné en %d coup(s)" %(cpt)
Bonsoir !
Non !
Il ne faut pas modifier la variable "nombresecret" à l"intérieur de la boucle.
Pour un nouvel essai tu dois lire un nouveau nombre et l'affecter à la variable "nombre".
La condition de contrôle de la boucle pourrait être plus simplement "nombresecret!=nombre" .
De plus si tu initialises "cpt" à 1 tu vas annoncer un "coup de trop" à la fin de ton jeu.
C'est assez simple pour que tu puisses faire "tourner à la main " ton algorithme et voir que les réponses ne sont pas les bonnes.
@aaron35.
Je me permet de te rappeler ce que je t'ai dis sur la balise code.
nombre = input("Devinez le nombre:")
nombrsecret = random.randint(1,100)
cpt=1
while nombre<nombresecret or nombre>nombresecret:
if nombre<nombresecret:
print "Plus grand!"
elif nombre>nombresecret:
print "Plus petit!"
nombresecret = input("essaye encore!:")
cpt=cpt+1
print "Gagné en %d coup(s)" %(cpt)
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> nbr = input("Devinez le nombre:")
nbrsecret = random.randint(1,100)
cpt=0
while nombre<nombresecret
if nombre<nombresecret:
print ("Plus grand!")
if nombre>nombresecret:
print ("Plus petit!")
if nombresecret=nombre
print ("bravo!")
nombresecret = input("Essayez encore!:")
cpt=cpt+1
print "Gagné en %d coup(s)" %(cpt)
est ce que c'est bon cette fois ci ?car je ne vois rien de bizarre
Tu compares "nombre" qui n'est pas initialisé ni saisi donc inconnu avec quelque chose de connu ! Comment veux tu que cela fonctionne ?
Une précision : avant d'écrire des lignes de programme dans un langage, il faut commencer par rédiger un algorithme qui traduit les étapes que réalisera le programme.
As tu réfléchi à la première étape : l'algorithme ?
Et quand tu auras écrit l'algorithme il faudra le tester avec plusieurs valeurs avant de le traduire dans un langage !
L'ordinateur choisit un nombre
Je propose un nombre
Il y a 2 possibilités :
- le nombre choisi par l'ordinateur est plus grand que celui que j'ai donné
- le nombre choisi par l'ordinateur est plus petit que celui que j'ai choisi
Quel indice le donne l'ordinateur ?
Je répète l'opération jusqu'à quelle issue ?
Que doit afficher le programme ? Comment obtenir ces résultats ?
Que de questions qui doivent obtenir des réponses sans erreurs.
Quel indice le donne l'ordinateur ? si le nombre choisit est plus grand que le nombre mystère on affiche print
Je répète l'opération jusqu'à quelle issue ? jusqu'a ce que le nombre mystere soit trouvé
Que doit afficher le programme ? Comment obtenir ces résultats ? je ne sais pas
Que de questions qui doivent obtenir des réponses sans erreurs.
je ne sais toujours pas pour moi mon code est tout à fait correct mais là vous m'embrouiller
Pourriez vous me donner le code source python pour ce programme svp
Je peux faire un phrase du genre : un lapin a mangé mon frigidaire
Cette phrase est correcte grammaticalement parlant Au niveau sémantique elle est plus douteuse.
On peut faire des expressions Python correctes au niveau syntaxe mais qui n'ont aucun sens !
On peut essayer un pseudo-code.
Donner un titre
Tirer le nombre_mystere au hasard entre, par exemple 1 et 100
Initialiser le compteur à 0
Initialiser X à une valeur ne pouvant pas être le nombre_mystere ( ici 0 par exemple )
Tant que X n'est pas le nombre_mystere :
augmenter le compteur de 1
demander une valeur X pour le nombre_mystere
si X= nombre_mystere :
afficher " bravo, vous avez gagné en " compteur " coups "
si X<nombre_mystere :
afficher "trop petit"
si X>nombre_mystere :
afficher "trop grand"
% fin de la boucle " tant que "
j'ai réessayer mais ça marche pas
nombre = input("Devinez le nombre:")
nombrsecret = random.randint(1,100)
cpt=1
while nombre<nombresecret or nombre>nombresecret:
if nombre<nombresecret:
print "Plus grand!"
elif nombre>nombresecret:
print "Plus petit!"
nombresecret = input("essaye encore!:")
cpt=cpt+1
print "Gagné en %d coup(s)" %(cpt)
je ne vois pas ni ne comprends mes erreurs.
bon j'essaye autrement
import random
nbr_secret = random.randint(1,100)
invite = 'propose un nombre'
while true
nbr_joueur = raw_input(invite)
if nbr_secret== int(nbr_joueur:
print('bravo?')
break
elif nbr_secret > int(nbr_joueur):
print('trop petit')
else
print('trop grand')
par contre je ne sais comment faire pour indiquez en combien de coups on a trouvé nbr_secret
nbr_secret = random.randint(1,100)
invite = 'propose un nombre'
while true:
nbr_joueur = raw_input(invite)
if nbr_secret== int(nbr_joueur:
print('bravo?')
break
elif nbr_secret > int(nbr_joueur):
print('trop petit')
else
print('trop grand')
Bonjour,
Comme te l'a dit fort justement cocolaricotte que je salue au passage, avant d'écrire du code, il est bon de traduire la question posée dans un langage plus simple.
je réessaye encore une fois mais je n'y arrive pas
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> n = random.randint(0,100)
appreciation = "?"
while True:
var = input("Entrez un nombre")
var = int(var)
if var < n :
appreciation = "trop bas"
print(var, appreciation)
else :
appreciation = "trop haut"
print(var, appreciation)
if var == n:
appreciation = "bravo !"
print(var, appreciation)
break
import random
nombre = input("Devinez le nombre:")
nombrsecret = random.randint(1,100)
cpt=0
while nombre<nombresecret or nombre>nombresecret:
if nombre<nombresecret:
print "Plus grand!"
elif nombre>nombresecret:
print "Plus petit!"
nombresecret = input("essaye encore!:")
if nombre= nombresecret
print( "Gagné en %d coup(s)" %(cpt)
cpt=cpt+1
print("\t\t\t\t=== LE JEU DU PLUS OU MOINS ===\n\n")
nombreMystere = randint(1, 100)
while nombrePropose != nombreMystere:
print("Quel est le nombre ?")
nombrePropose = input()
nombrePropose = int(nombrePropose)
if nombrePropose < nombreMystere:
print("C'est trop petit !\n")
elif nombrePropose > nombreMystere:
print("C'est trop grand !\n")
else:
print("Félicitations, vous avez trouvé le nombre mystère !!!\n")]
Non !
Lors du premier test la variable "nombrePropose" n'est pas initialisée.
Dès que tu initialises "nombre Mystere", AVANT le "while" il faut donner une valeur intéressante (je te suggère 0) à la variable "nombrePropose"...
nombrePropose = input()
nombrePropose = int(nombrePropose)
comment ça pas initialisé
while nombrePropose != nombreMystere:
print("Quel est le nombre ?")
là il faut inverser les instructions je penses
j'essaye déjà de coder le jeu plus ou moins mais je ne sais pas comment parvenir à afficher le nombre de tentatives quand on a trouver le nombre mystere
import random
>>>
>>> nbr_secret = random.randint(1,100)
>>> invite = 'propose un nombre : '
>>> while true:
nbr_joueur = raw_input(invite)
if nbr_secret ==int(nbr_joueur):
print('bravo vous avez trouver')
break
elif nbr_secret > int(nbr_joueur):
print('trop petit')
else:
print('trop grand')
Plus simple ?
1. Je ne pratique pas le "python"
2. Il n'est pas question ici de rédiger les devoirs.
On t'a donné suffisamment d'indications pour t'en sortir : il suffisait de corriger ce que tu avais écrit sans faire de grands changements.
Je crois que j'ai compris les petits changements à faire voici le code :
import random
>>>
>>> nbr_secret = random.randint(1,100)
>>> invite = 'propose un nombre : '
cpt=0
>>> while true:
nbr_joueur = raw_input(invite)
if nbr_secret ==int(nbr_joueur):
print('bravo vous avez trouver')
break
elif nbr_secret > int(nbr_joueur):
print('trop petit')
else:
print('trop grand')
cpt = cpt + 1
j'ai essayé une autre méthode et je pense qu'enfin c'est la bonne réponse
random import
i = 1
a = randint(1,100)
x = int(input("Essayer de trouver le nombre mystère (entre 1 et 100) :"))
while x != a:
i = 1
while x > a:
print("Le nombre mystère est plus petit.")
x = int(input("Essayer de trouver le nombre mystère (entre 1 et 100) :"))
while x < a:
print("Le nombre mystère est plus grand.")
x = int(input("Essayer de trouver le nombre mystère (entre 1 et 100) :"))
if x == a:
print("Vous avez trouver le nombre mystère qui est de",a,"au bout de",i,"essais.")
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :