TABLES DE MULTIPLICATION

slachz Messages postés 109 Date d'inscription lundi 21 avril 2003 Statut Membre Dernière intervention 1 janvier 2006 - 13 oct. 2004 à 11:40
cs_gaulthier Messages postés 9 Date d'inscription samedi 2 juin 2007 Statut Membre Dernière intervention 3 juin 2009 - 2 juin 2007 à 22:59
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/26781-tables-de-multiplication

cs_gaulthier Messages postés 9 Date d'inscription samedi 2 juin 2007 Statut Membre Dernière intervention 3 juin 2009
2 juin 2007 à 22:59
il y a deux erreurs dans ton prog:
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
Uims Messages postés 101 Date d'inscription vendredi 16 juillet 2004 Statut Membre Dernière intervention 31 octobre 2006
13 déc. 2005 à 12:51
Pour les debutants je trouve ce code vraiment pas mal.
T'a bien réussi les boucles...
cs_lepecheur Messages postés 35 Date d'inscription lundi 28 juillet 2003 Statut Membre Dernière intervention 29 octobre 2007
6 janv. 2005 à 23:02
Réduire pour réduire, on peut aussi remplacer par

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...
oooDieu Messages postés 12 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 15 mars 2005
27 déc. 2004 à 15:16
Désolé, j'ai eu un plantage.... Je refais...

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.
oooDieu Messages postés 12 Date d'inscription jeudi 8 janvier 2004 Statut Membre Dernière intervention 15 mars 2005
27 déc. 2004 à 15:11
" while (numero < 1): "

Pour réduire le code ==>

while (numero < 1 ) or (numero > 10):
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
29 oct. 2004 à 01:38
Il faut bien commencer par quelquechose.
Il y a 3 jours, j'étais à ce niveau-là aussi.

L'avantage avec Python, c'est que çà peut s'apprendre très vite si on programme dans d'autres langages.
Et donc on ne reste pas longtemps à ce niveau-là.

Enfin bref : Bonne source quand même ! Courage !
maxpeg0705 Messages postés 61 Date d'inscription lundi 17 mai 2004 Statut Membre Dernière intervention 21 septembre 2005 1
13 oct. 2004 à 12:27
Merci :)
Wai c'est sur que c'est tres basique ^^ mais fo un debut a tout :p
slachz Messages postés 109 Date d'inscription lundi 21 avril 2003 Statut Membre Dernière intervention 1 janvier 2006
13 oct. 2004 à 11:40
c'est sure que c'est basique ^^
masi facile a comprendre pour un debutant ( ce qui est recherché :p )
Rejoignez-nous