Soyez le premier à donner votre avis sur cette source.
Snippet vu 32 239 fois - Téléchargée 34 fois
# -*- coding: cp1252 -*- # tables.py par maxpeg0705 # Met du vide dans la variable numero numero = '' # Tant que numero est vide while (numero == ''): # Stocke dans la variable numéro la réponse de l'utilisateur try: numero = input('Quelle table de multiplication ? (entre 1 et 10) : ') # Si il y a une erreur !! except: print 'Veuillez entrer un chiffre !!' # Tant que numero est plus petit que 1 while (numero < 1): print 'Veuillez entrer un chiffre compris entre 1 et 10 !!' numero = input('Quelle table de multiplication ? (entre 1 et 10) : ') # Tant que numero est plus grand que 10 while (numero > 10): print 'Veuillez entrer un chiffre compris entre 1 et 10 !!' numero = input('Quelle table de multiplication ? (entre 1 et 10) : ') # Autrement on affiche else : # Met une ligne vide print '' a,b,c = numero,2,numero # Pour afficher seulement 10 resultats maxi = numero * 10 # Tant que a ne depasse pas maxi while (a <= maxi) : print a a = c * b b = b + 1
2 juin 2007 à 22:59
dans
while (numero < 1):
...
et dans
while (numero > 10):
...
il te faudrais
try:
...
except:
...
comme dans la boucle
while (numero ==''):
...
et le else a la fin des boucle while ne sert a rien car quand l'utilisateur sort de toutes ces boucle c est que toute les conditions sont remplies.
de plus si l utilisateur entre 20, il ne rentre pas dans la boucle numero <1
mais rentre dans la deuxieme et si dans la deuxieme il entre -1 tu l a dans l os!!!
et enfin faire ceci:
# Pour afficher seulement 10 resultats
maxi = numero * 10
# Tant que a ne depasse pas maxi
while (a <= maxi) :
...
revient au meme que faire:
soit:
while a<=10:
...
soit:
for a in range(1,11):
...
donc voici le meme code :
continuer=True
#tant que continuer est 'vrai'
while continuer:
#Essais: si l'entrée est un nombre
try:
print 'Entrer un nombre compris entre 1 et 10'
numero=input()
#Tant que le numero n'est pas compris dans l'intervalle [1:10] (liste=[1,2,3,4,5,6,7,8,9,10]
while numero not in range(1,11):
numero=input()
#arret de la boucle
continuer=False
#Si erreur dans l'essais (Excepté)
except:
print "Veuillez entrer un nombre"
#Boucle servant à l'affichage de la table de mult.
for i in range(1,11):
print numero*i
13 déc. 2005 à 12:51
T'a bien réussi les boucles...
6 janv. 2005 à 23:02
while numero not in range(1,11):
et si on veut encore gagner un mot, on inverse les blocs et on met:
while numero in range(1,11): #(sans le "not" ;) )
# Met une ligne vide
print ''
...
et
else:
print 'Veuillez entrer un chiffre compris entre 1 et 10 !!'
...
Mais bon, est-ce vraiment important de faire court dès ses débuts...
27 déc. 2004 à 15:16
Pour réduire le code ==>
while (numero < 1 ) or (numero > 10) or (numero == ""):
numero = input(......)
Cela évite d'écrire 3 fois le input et réduit le code à presque 1 tiers !!!
Ce n'est qu'un avis...
Bon courage pour la suite.
27 déc. 2004 à 15:11
Pour réduire le code ==>
while (numero < 1 ) or (numero > 10):
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.