Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 7 sur 7
  1. #1
    Invité régulier
    Inscrit en
    juin 2009
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : juin 2009
    Messages : 18
    Points : 5
    Points
    5

    Par défaut les nombres d'AMSTRONG.

    salut tout le monde,

    pouvez vous m'aider a concevoir un algorithme qui permet d'afficher tous les nombres d'AMSTRONG inférieurs a un entier naturel donnée. en utilisantune fonction qui fournit le cube d'un chiffre et une fonction qui vérifie si un nombre donnée est un nombre d'AMSTRONG.

    SVP donner moi une idée sur les nombres d'AMSTRONG.

    et merci d'avance.

  2. #2
    Membre confirmé Avatar de Wachter
    Homme Profil pro
    Inscrit en
    octobre 2008
    Messages
    259
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : octobre 2008
    Messages : 259
    Points : 263
    Points
    263

    Par défaut

    Salut,
    Citation Envoyé par noussa17 Voir le message
    SVP donner moi une idée sur les nombres d'AMSTRONG.
    Citation Envoyé par Wikipédia
    Un nombre d'Armstrong est un nombre dont la somme des cubes des chiffres le composant vaut ce nombre.

    Exemple : 371 = 3^3 + 7^3 + 1^3

    Les nombres d'Armstrong à trois chiffres sont : 0, 1, 153, 370, 371 et 407.
    Citation Envoyé par noussa17 Voir le message
    pouvez vous m'aider a concevoir un algorithme qui permet d'afficher tous les nombres d'AMSTRONG inférieurs a un entier naturel donnée.
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Pour i de 1 à n faire
      a <-- 0;
      q <-- i;
      Tant que n différent de 0 faire
        r <-- reste de la division de q par 10;
        q <-- quotient de la division de q par 10;
        a <-- a + r³;
      Fin Tant que
      Si a = i alors
        écrire(i);
      Fin Si
    Fin Pour
    --
    Wachter
    Si vous souhaitez passer la certification Voltaire, vous aurez droit à un tarif préférentiel en saisissant mon code parrain : NTMPH759.

  3. #3
    Expert Confirmé Sénior
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    avril 2003
    Messages
    6 164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : avril 2003
    Messages : 6 164
    Points : 7 656
    Points
    7 656

    Par défaut

    On peut néanmoins faire mieux avec un peu d'astuce et en partant des combinaisons de chiffres plutôt que de tester chaque nombre dans l'ordre.

    (NB: Les nombres d'Armstrong ne sont normalement pas forcément la somme des cubes de leurs chiffres mais plutôt la somme de leurs chiffres élevés au nombre de chiffres, par exemple 1634 = 1^4 + 6^4 + 3^4 + 4^4 est un nombre d'Armstrong (aussi appelé nombre narcissiques), je n'ai pas trouvé de références limitant l'usage du terme "nombres d'Armstrong" au cas 3, sauf dans l'article lapidaire de la Wikipédia française)

    --
    Jedaï

  4. #4
    Inactif
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    octobre 2004
    Messages
    3 894
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : octobre 2004
    Messages : 3 894
    Points : 4 358
    Points
    4 358

    Par défaut

    Citation Envoyé par Jedai Voir le message
    sauf dans l'article lapidaire de la Wikipédia française
    Idem. Article Wikipédia modifié, d'ailleurs.

  5. #5
    Membre expérimenté
    Avatar de bombseb
    Inscrit en
    juillet 2005
    Messages
    510
    Détails du profil
    Informations forums :
    Inscription : juillet 2005
    Messages : 510
    Points : 564
    Points
    564

    Par défaut

    Un nombre d'Armstrong est un nombre dont la somme des cubes des chiffres le composant vaut ce nombre.

    Exemple : 371 = 3^3 + 7^3 + 1^3

    Les nombres d'Armstrong à trois chiffres sont : 0, 1, 153, 370, 371 et 407.
    j'ai beau refaire cette opération 3^3 + 7^3 + 1^3 : je ne trouve pas 371
    (pareil pour 370) ou alors il y a un truc que j'ai pas compris

  6. #6
    Rédacteur/Modérateur



    Homme Profil pro Thomas Levesque
    Développeur .NET
    Inscrit en
    février 2004
    Messages
    19 168
    Détails du profil
    Informations personnelles :
    Nom : Homme Thomas Levesque
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2004
    Messages : 19 168
    Points : 36 579
    Points
    36 579

    Par défaut

    Dans la plupart des langages l'opérateur "^" ne veut pas dire "puissance" mais "XOR" (OU exclusif)... donc :

    3^3 + 7^3 + 1^3
    = 3 XOR 3 + 7 XOR 3 + 1 XOR 3
    = 0 + 4 + 2
    = 6

    Pour mettre un nombre x au cube, utilise x*x*x

    3*3*3 + 7*7*7 + 1*1*1
    = 27 + 343 + 1
    = 371

  7. #7
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    5 315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 5 315
    Points : 12 313
    Points
    12 313

    Par défaut

    Juste pour info, un certain nombre de langages, y compris celui de gnuplot mais à l'exception des dérivés du C, proposent l'opérateur ** pour élever à la puissance n.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •