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 :

Exercice : afficher tous les nombres entre 0 et 1000 dont la somme des chiffres est égale à 15


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2022
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2022
    Messages : 5
    Par défaut Exercice : afficher tous les nombres entre 0 et 1000 dont la somme des chiffres est égale à 15
    Bonjour,
    J'aide du mal avec cet exercice, quelqu'un pourrait m'aider svp ?


    ecrire une procedure en Python qui affiche tous les nombres entre 0 et 1000 dont la somme de ses centaines, dizaines et unites est egale a 15. Exemple : 168 => 1+6+8 = 15

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Salut,

    Vous avez fait quoi? Quelle difficultés rencontrez vous?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2022
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2022
    Messages : 5
    Par défaut
    j'ai pu faire la procédure de la somme de ses centaines, dizaines et unites mais mon probleme c'est comment affiche tous les nombres entre 0 et 1000

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    def somme(n):
        if n // 10 == 0:
            return n
        else:
            return n % 10 + somme( n // 10 )
     
    print( somme (12) )

  4. #4
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par défaut
    bonjour

    Pour nous présenter du code, il faut impérativement utiliser le bouton CODE # sinon la présentation est cassée

    Si ta fonction somme() fonctionne alors tu as fait le plus difficile, je suppose que tu as déjà vu range et for ...

    note: Etrange, tu écris une fonction très difficile pour un débutant et tu bloques sur la partie la plus simple...

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Citation Envoyé par zakaria_eco Voir le message
    j'ai pu faire la procédure de la somme de ses centaines, dizaines et unites mais mon probleme c'est comment affiche tous les nombres entre 0 et 1000
    Ce n'est pas très différent de faire une boucle qui affiche les nombre de 0 à 10... Et c'est dans les premiers chapitres de tous les tutos.
    note: pour moi, on apprend les fonctions récursive après les boucles... vous avez loupé quoi?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 228
    Par défaut
    Hello,
    pour ton exercice, tu pourrais utiliser la fonction divmod :
    Fonction divmod() – Python
    La fonction divmod() renvoie un tuple contenant le quotient et le reste lorsque l'argument 1 (divident) est divisé par l'argument 2 (diviseur).
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    centaine,reste = divmod(i,100)
    ami calmant, J.P

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2022
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2022
    Messages : 5
    Par défaut
    j'ai déjà essayé la boucle for
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     n = 1000 
     for x in range(0,n+1):
      def somme(x):
        if n // 10 == 0:
            return n
        else:
            return n % 10 + somme( n // 10 )
     
     print( somme (13) )
    mais ça ne fonctionne pas et pareil pour la condition if

  8. #8
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Citation Envoyé par zakaria_eco Voir le message
    j'ai deja essayé la boucle for
    Votre boucle "for" n'a pas a définir la fonction "somme" à chaque itération.
    Ouvrez un tuto. apprenez les bases et essayer de comprendre ce que vous demandez à Python d'exécuter plutôt que "d'essayer" pour constater que çà ne marche pas.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  9. #9
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par zakaria_eco Voir le message
    mais ça ne fonctionne pas et pareil pour la condition if
    Ouais, la boucle est ok. Mais pour le reste...
    Tu sais ce qu'est une fonction? Comment on s'en sert? Tu as lu ce que j'ai écrit "...et quand somme(n) = 15 alors tu affiches n" ? T'es vraiment développeur informatique?
    A quel moment tu appelles la fonction en lui passant le nombre à évaluer???
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  10. #10
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par zakaria_eco Voir le message
    j'ai pu faire la procédure de la somme de ses centaines, dizaines et unites
    Pas vraiment besoin de fonction récursive pour ça. Te suffisait de gérer les centaines, les dizaines et les unités (bref 3 lignes, ou 3 groupe de 2 lignes)

    Citation Envoyé par zakaria_eco Voir le message
    mais mon probleme c'est comment affiche tous les nombres entre 0 et 1000
    Ben une boucle (for, while au choix)...
    Donc tu fais une boucle sur une variable n et quand somme(n) = 15 alors tu affiches n
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

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

Discussions similaires

  1. afficher tous les dates entre deux périodes
    Par maximath dans le forum Access
    Réponses: 5
    Dernier message: 05/11/2020, 18h51
  2. Xcas : tous les nombres entre 1 et 100
    Par jfk10 dans le forum Général Python
    Réponses: 9
    Dernier message: 10/08/2019, 16h09
  3. [TPW] Afficher tous les nombres parfaits dans l'intervalle 1..99999
    Par fatma2013 dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 30/10/2013, 18h45
  4. [Exercice] Afficher tous les nombres
    Par zlatino dans le forum Pascal
    Réponses: 7
    Dernier message: 05/03/2009, 19h42
  5. Réponses: 14
    Dernier message: 25/11/2007, 18h32

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