Bug programme simple avec python
Résolu
yo!da
Messages postés
146
Statut
Membre
-
yo!da Messages postés 146 Statut Membre -
yo!da Messages postés 146 Statut Membre -
Bonjour,
Voilà, j'ai créé un petit prog en ligne de commande qui affiche les tables de multiplications
coef = 1
while 1:
print("Entrez le nombre dont vous voulez connaître les multiples.")
nbr = input()
nbr = int(nbr)
print "Le nombre que vous avez choisi est" ,nbr
print("continuer? 1/0")
choix = input()
choix = int(choix)
if choix == 0:
continue
else:
while coef<=10:
print coef,"X",nbr,"=",coef*nbr
coef+=1
Je suis débutant oui :D seulement je ne sais pas pourquoi, le programme marche bien comme suit:
Entrez le nombre dont vous voulez connaître les multiples.
7
Le nombre que vous avez choisi est 7
continuer? 1/0
1
1 X 7 = 7
2 X 7 = 14
3 X 7 = 21
4 X 7 = 28
5 X 7 = 35
6 X 7 = 42
7 X 7 = 49
8 X 7 = 56
9 X 7 = 63
10 X 7 = 70
Entrez le nombre dont vous voulez connaître les multiples.
2
Le nombre que vous avez choisi est 2
continuer? 1/0
1
Entrez le nombre dont vous voulez connaître les multiples.
Alors 2 choses:
1) je n'arrive pas à faire des choix o/n
car il m'affiche "name o not defined"
2)La deuxième fois il recommence au continue même si je tape 1
Répondez-moi SVP.
Config: xubuntu 10.10
Voilà, j'ai créé un petit prog en ligne de commande qui affiche les tables de multiplications
coef = 1
while 1:
print("Entrez le nombre dont vous voulez connaître les multiples.")
nbr = input()
nbr = int(nbr)
print "Le nombre que vous avez choisi est" ,nbr
print("continuer? 1/0")
choix = input()
choix = int(choix)
if choix == 0:
continue
else:
while coef<=10:
print coef,"X",nbr,"=",coef*nbr
coef+=1
Je suis débutant oui :D seulement je ne sais pas pourquoi, le programme marche bien comme suit:
Entrez le nombre dont vous voulez connaître les multiples.
7
Le nombre que vous avez choisi est 7
continuer? 1/0
1
1 X 7 = 7
2 X 7 = 14
3 X 7 = 21
4 X 7 = 28
5 X 7 = 35
6 X 7 = 42
7 X 7 = 49
8 X 7 = 56
9 X 7 = 63
10 X 7 = 70
Entrez le nombre dont vous voulez connaître les multiples.
2
Le nombre que vous avez choisi est 2
continuer? 1/0
1
Entrez le nombre dont vous voulez connaître les multiples.
Alors 2 choses:
1) je n'arrive pas à faire des choix o/n
car il m'affiche "name o not defined"
2)La deuxième fois il recommence au continue même si je tape 1
Répondez-moi SVP.
Config: xubuntu 10.10
4 réponses
-
Remplace la ligne
print "Le nombre que vous avez choisi est" ,nbr
parprint "Le nombre que vous avez choisi est" ,nbr," et coef vaut",coef
et fais tourner. -
Ton code peut être condensé:
while 1: nbr = int(input("Entrez le nombre dont vous voulez connaître les multiples: ")) if input("Le nombre que vous avez choisi est %d\n" "continuer? 1/0 " % nbr)=='1': coef = 1 while coef<=10: print coef,"X",nbr,"=",coef*nbr coef+=1
Note que quand on a une boucle while avec un nombre de tours prévisibles, on la remplace par une boucle for. -
Et pour montrer ce qu'on peut faire avec Python:
mess = "Le nombre que vous avez choisi est %d\ncontinuer? 1/0 " while 1: nbr = int(input("Entrez le nombre dont vous voulez connaître les multiples: ")) for coef in xrange(1, 10 if input(mess % nbr)=='1' else 0): print "%d X %d = %d" % (coef,nbr,coef*nbr) -
Merci pour toutes ces explications cela m'aidera bien je marque le sujet comme résolu^^