IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

[Débutant] Nombre parfait


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 2
    Points : 3
    Points
    3
    Par défaut [Débutant] Nombre parfait
    Bonjour à toutes et à tous !

    Donc voila je dois créer un algorithme qui permet de savoir combien y'a t'il de nombres parfait inférieur à 1000, jusqu'à la j'avais su codé pour savoir si un nombre est parfait ou non mais j'ai du mal à faire en sorte que l'algorithme cherche et m'affiche le nombre de nombres parfait allant de 1 à n.

    Voici mon code :
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    dividende=0
    modulo=0
    resultatMod=0
    sommeD=0
    for i in range(2,1000):
        while(dividende < i ):
            dividende=dividende+1
            modulo=i%dividende
            if(modulo==0):
                resultatMod = resultatMod + dividende
        if(resultatMod == i):
            print(resultatMod)
            sommeD = sommeD+1
    print("il y a ", sommeD ," nombre parfait !")

    Après avoir testé sur papier et effectuer plusieurs essais différent en modifiant le code, bien je voie pas où est le problème... Il me dit qu'il y a 0 nombre parfait, alors que je sait que j'aurai du obtenir comme résultat 3 nombres parfait qui sont : 6, 28 et 496.
    Si quelqu'un pouvais m'aiguiller sa serait gentil !

    Merci d'avance !

  2. #2
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Juin 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : .
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2002
    Messages : 239
    Points : 567
    Points
    567
    Par défaut
    Bonjour.

    Il me semble que les trois variables : dividende, modulo, resultatMod
    devraient être re-initialisées à 0 à chaque entrée dans la boucle, et non une seule fois au début du programme.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup ! effectivement, j'ai réinitialisé les 3 variables dans la boucle et il m'affiche bien mon résultat attendu ! merci beaucoup encore !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Nombres parfaits : petite erreur dans l'algorithme
    Par katrena99 dans le forum Pascal
    Réponses: 6
    Dernier message: 27/01/2014, 22h36
  2. pb nombres parfaits et amis
    Par snake264 dans le forum Mathématiques
    Réponses: 18
    Dernier message: 25/01/2008, 16h05
  3. [Débutant] Nombre d'arguments variables
    Par akrodev dans le forum C++
    Réponses: 9
    Dernier message: 01/06/2006, 02h51
  4. [débutant] nombre de colonne dan sun fichier csv
    Par mandagor dans le forum C++
    Réponses: 18
    Dernier message: 15/06/2005, 15h42
  5. nombres parfaits...
    Par giminik dans le forum Mathématiques
    Réponses: 7
    Dernier message: 15/10/2002, 18h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo