Somme d'une boucle "for" [ Programmation Débutant , (Python)]
Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

Somme d'une boucle "for" [ Programmation Débutant , (Python)]



  1. #1
    xamannel

    Somme d'une boucle "for" [ Programmation Débutant , (Python)]


    ------

    Bonjour ,
    Je suis novice en programmation , et je cherche à comprendre pourquoi le programme ci-joint ne marche pas . Je souhaiterai faire la somme des multiples du nombre 3 et 5 ( en dessous de 1000) .
    Merci à ceux qui prennent le temps de répondre .
    Cordialement ,

    -----
    Images attachées Images attachées  

  2. #2
    CM63

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Bonsoir,

    Je ne ferais que quelques remarques car je n'ai pas le temps de rester connecter:
    - c devrait être initialisé en dehors de la boucle,
    - le print est dans la boucle, tu vas donc imprimer 200 fois (peu importe quoi), je ne pense pas que c'est ce que tu veux faire,
    - la fonction str transforme un nombre en chaîne de caractère, là non plus, je ne pense pas que c'est ce que tu veux faire,
    - tu utilise 5 mais pas 3,

    Mais sinon (certes ce n'est peut-être pas le but de l'exercice), pour imprimer les multiples de 5 jusqu'à 100 (je prends 100 car il y en a moins), il suffit de faire:

    range(0,101,5)

    On met 101 comme borne supérieure car il s'arrête quand la valeur est égale à la borne (ou plutôt il imprime tant que la valeur est strictement inférieure à la borne).

    Je te laisse chercher comment faire pour ne pas imprimer 0, éventuellement.

    A plus.
    Dernière modification par CM63 ; 06/02/2016 à 21h59.

  3. #3
    xamannel

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Merci pour ta réponses
    Je souhaiterai faire un programme qui me permet de faire la somme des multiples de 5 jusqu'à 995 ; autrement dit qui fait 5+10+15+20......

  4. #4
    CM63

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Bonjour,

    Ok, et qu'est-ce que tu as fait? As-tu modifié le premier programme que tu as proposé, au vue de nos remarques?

  5. A voir en vidéo sur Futura
  6. #5
    xamannel

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Ce programme ne marche pas pourquoi ?
    Images attachées Images attachées  

  7. #6
    CM63

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Bonjour,

    Python permettant de taper des commandes au clavier, tu peux regarder point par pont ce qui ne va pas. Je ne prends que la première instruction range : si je tape range(1,200,) , j’obtiens les entiers de 1 à 199. Ce n'est pas ce que tu veux. Donc déjà, que faut-il faire pour avoir les entiers de 5 en 5?

  8. #7
    xamannel

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Si sa j'y arrive en faisant :
    for x in range(1,200):
    b= x*5
    Print(b) , et la ça marche sa me met tous les multiples de 5 jusqu'à 1000 mais moi je veux que ce programme me fasse la somme des multiples de 5 <1000 .

  9. #8
    CM63

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Ah oui, pardon, alors le problème c'est l'utilisation de la fonction sum. Cette fonction prend en argument une liste. Il faut donc construire une liste dans la boucle. Avant la boucle il faut initialiser cette liste à [], et dans la boucle, ajouter à cette liste le nombre b en utilisant la fonction l.append(b) . Et ensuite, en sortant de la boucle tu fais print(sum(la liste)).

    Fais le d'abord pour 5, et ensuite pour le faire avec 3 , ce sera la même chose (mais certainement pas en incluant la deuxième boucle dans la première).

  10. #9
    xamannel

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Honnêtement je comprends pas :
    list = []
    for x in range (0,200)
    et après ? comment j'organise sa s'il vous plaît ?

  11. #10
    CM63

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    C'est bon pour le début. Mais utilise plutôt le nom liste (avec un e en français) car sinon tu risques d'écraser un mot clef du langage (Et tu te demanderas pourquoi le mot clef list ne marche plus, car Python ne prévient pas). La règle : ne pas utiliser des mots clef du langage comme noms de variable (malheureusement Python le permet).

    Bon, ok, et ensuite dans la boucle, tu fais liste.append(b), et après la boucle : print(sum(liste))

  12. #11
    CM63

    Re : Somme d'une boucle "for" [ Programmation Débutant , (Python)]

    Bon désolé, je dois partir. Bon courage.

Discussions similaires

  1. Preuve d'invariant de boucle/somme d'une liste/python
    Par FarWaR dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 08/11/2015, 09h28
  2. Python: transformer 103 en ("3","0","1")
    Par WhiteChocapic dans le forum Programmation et langages, Algorithmique
    Réponses: 12
    Dernier message: 24/10/2015, 15h54
  3. python : probleme avec .encode("hex")
    Par docEmmettBrown dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 10/06/2015, 07h47
  4. Quand a-t-on " l'espérance d'une somme est égale à la somme des espérances "
    Par neoda dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 12/02/2014, 17h15
  5. R : boucle "for" ou "apply"
    Par invitec5eb4b89 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 25/04/2007, 18h14