Petit probleme d'un debutant en PYTHON help!!

Résolu/Fermé
papieminem1 Messages postés 1192 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 23 novembre 2015 - 3 avril 2008 à 23:34
papieminem1 Messages postés 1192 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 23 novembre 2015 - 4 avril 2008 à 02:00
Bonjour,
voici l'exercice que je voulais faire:
Écrire un programme qui, étant données deux bornes entières a et b, additionne les nombres
multiples de 3 et de 5 compris entre ces bornes.
Prendre par exemple a = 0, b = 32 ® le résultat devrait être alors 0 + 15 + 30 = 45.
Modifier légèrement ce programme pour qu'il additionne les nombres multiples de 3 ou de
5 compris entre les bornes a et b. Avec les bornes 0 et 32, le résultat devrait donc être : 0 +
3 + 5 + 6 + 9 + 10 + 12 + 15 + 18 + 20 + 21 + 24 + 25 + 27 + 30 = 225.

Voici le code que j'ai etabl moi meme.


c=raw_input("Veuillez donner la borne inferieure de l'intervalle s.v.p:")
d=raw_input("Veuillez donner la borne superieure de l'intervalle s.v.p:")
l=[]
a=float(c)
b=float(d)
while a<=b:
l.append(a)
a=a+1
print l
x=0
ll=[]
print x
while x<len(l):
if l[x]%3==0 and l[x]%5==0:
ll.append(x)
x=x+1
print ll
t=0
y=0
while y<len(ll):
t=len[y]+t
y=y+1
print "La somme des elements qui sont multiples de trois et de cinq est:",t

Bon j ai remarque que le code s'executait j'usqu'a print x mais la seconde boucle while ne s'execute pas et tout le reste mais le programme ne bug pas du tout.
Est-ce parce-qu'on peut pas executer deux boucle dans un meme programme??


3 réponses

kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 524
4 avril 2008 à 01:02
Si bien sûr qu'on peut avoir plusieurs boucles dans un programme. Heureusement d'ailleurs.
Bon j'ai du mal à comprendre ton code car je ne vois pas les tabulations qui délimite les expressions en dessous des boucles. Si tu insères du code, mets le entre les balises code

Voici ce que je te propose:

#input c'est comme raw_input mais l'expression entrée est un entier
c=input("Veuillez donner la borne inferieure de l'intervalle s.v.p:")
d=input("Veuillez donner la borne superieure de l'intervalle s.v.p:")

#La variable qui prendra les additions
resultat = 0 
#Pour i allant de c à d
for i in range(c, d):
    #Si i est multiple de 3 ou 5
    if (i%3 == 0) or (i%5==0):
        #Alors resultat = resultat + i
        resultat += i
print resultat

Pour faire un rappel sur l'utilité du for, si tu fais:
for i in range(a, b):
    print i

C'est l'equivalent de
i=a
while i<b:
    print i
    i = i + 1
0
papieminem1 Messages postés 1192 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 23 novembre 2015 196
4 avril 2008 à 01:24
Désolé pour ce charabia que j'ai écris
encore merci
en plus j'ai réussi a modifie mon code et ça marche aussi
comment on fait pour poster un code en gardant la mise en forme
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 524
4 avril 2008 à 01:49
Tu prends les balises code et tu mets ton code dedans:
<code>
Mon code

</code>
0
papieminem1 Messages postés 1192 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 23 novembre 2015 196
4 avril 2008 à 02:00
ok merci





0