Petit probleme d'un debutant en PYTHON help!! [Résolu/Fermé]

Messages postés
1197
Date d'inscription
mercredi 9 janvier 2008
Statut
Membre
Dernière intervention
23 novembre 2015
- - Dernière réponse : papieminem1
Messages postés
1197
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??


Afficher la suite 

3 réponses

Messages postés
8896
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1320
0
Merci
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
papieminem1
Messages postés
1197
Date d'inscription
mercredi 9 janvier 2008
Statut
Membre
Dernière intervention
23 novembre 2015
173 -
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
Messages postés
8896
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1320
0
Merci
Tu prends les balises code et tu mets ton code dedans:
<code>
Mon code

</code>
Messages postés
1197
Date d'inscription
mercredi 9 janvier 2008
Statut
Membre
Dernière intervention
23 novembre 2015
173
0
Merci
ok merci