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

 C++ Discussion :

extraire chiffres entrés par l'utilisateur sans utiliser de string ou de if statement.


Sujet :

C++

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut extraire chiffres entrés par l'utilisateur sans utiliser de string ou de if statement.
    Bonjour à tous!
    J'en suis à mes tout premiers essaie en programmation. Dans le cadre de mon cours on utilise le logiciel microsoft visual C++ (2010). Mon programme doit etre en mesure de donner les 5 chiffres entré par l'utilisateur sans utiliser de string ou de if statement.
    ex: Si l'utilisateur entre 51987
    le programme doit donner
    7
    8
    9
    1
    5

    J'ai commencé a faire le programme mais je rencontre quelque difficulté.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    #include <iostream>                   // Access cout
    using namespace std;
     
     
    int main ()
    {
     cout << "Welcome in Marc-Alexandre's digit extractor." << endl;                       
    // Greeting message when entering the program
     
    cout << "Enter a positive integer number of a maximum of 5 digits and then press <Enter> " << endl;                 // Invite user to enter a positive 5 digit number
     
      int DigitNumber ;
    int DigitNumber1;
    int DigitNumber2;
    int DigitNumber3;
    int DigitNumber4;
    int Digit1 ;
    int Digit2 ;
    int Digit3 ;
    int Digit4 ;
    int Digit5 ;
     
    cin >> DigitNumber;
     
    Digit1=DigitNumber % 10;
     
      Digit1 = DigitNumber % 10;      // DigitNumber % 10 computes the remainder when DigitNumber is divided by 10
    DigitNumber4= DigitNumber / 10;
     
     Digit2=DigitNumber4 % 10;
    DigitNumber3 = DigitNumber4 / 10;
     
    Digit3 = DigitNumber3 % 10;
    DigitNumber2 = DigitNumber3 / 10;
     
     Digit4 = DigitNumber2 % 10;
      DigitNumber1 = DigitNumber2 / 10;
     
    Digit5 = DigitNumber1 % 10;
    DigitNumber1 = DigitNumber1 / 10;
     
    cout << "Digit1" << endl; 
    cout << "Digit2" << endl; 
    cout << "Digit3" << endl; 
    cout << "Digit4" << endl; 
    cout << "Digit5" << endl; 
    }
    quand je debug le programme J'obtiens les erreurs suivantes
    1>------ Build started: Project: try2, Configuration: Debug Win32 ------
    1> zsdvwqe.cpp
    1>tr2.obj : error LNK2005: _main already defined in part2.obj
    1>zsdvwqe.obj : error LNK2005: _main already defined in part2.obj
    1>C:\Users\Marc-Alexandre\Documents\Concordia\try2\Debug\try2.exe : fatal error LNK1169: one or more multiply defined symbols found
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped
    Quelqu'un peut m'expliquer svp??

  2. #2
    Expert confirmé Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Points : 5 379
    Points
    5 379
    Par défaut
    Utilise les basile de l'éditeur de texte pour nous présenter ton code "correctement".
    Tu nous présentes le code de zsdvwqe.cpp (je pense).
    C'est quoi tr2 et part2 ? Tu as plusieurs fichiers dans ton projet ?

    PS : je travaille avec 2005. Il y a peut-être des subtilités de 2010 qui m'échappent

  3. #3
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 626
    Points : 30 684
    Points
    30 684
    Par défaut
    Salut,

    Il "suffit" de demander un entier unique, et de jouer avec les opérations très compliquées que sont les boucles, les divisions par dix et les modulos

    un petit code " vite fait"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    int main() 
    {
        std::cout<<"veuillez introduire une valeur sur cinq chiffres :";
        int value;
        cin >> value;
        cout<<"premiers chiffre :"<<value / 10000<<std::endl;
        value %= 10000;
        cout<<"deuxieme chiffre :"<<value / 1000<<std::endl;
        value %= 1000;
        cout<<"troisieme chiffre :"<<value / 100<<std::endl;
        value %= 100;
        cout<<"quatrieme chiffre :"<<value / 10<<std::endl;
        value %= 10;
        cout<<"quatrieme chiffre :"<<value <<std::endl;
        return 0;
    }
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  4. #4
    Membre éprouvé Avatar de Steph_ng8
    Homme Profil pro
    Doctorant en Informatique
    Inscrit en
    Septembre 2010
    Messages
    677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Doctorant en Informatique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 677
    Points : 997
    Points
    997
    Par défaut
    Hello !

    Je voudrais juste signaler que dans le code de koala01, il y a deux « quatrieme chiffre », et qu'il affiche les chiffres dans le mauvais ordre.

    PS: J'ai toujours rêvé de faire avancer le schmillblick...

  5. #5
    Membre averti
    Avatar de David Fleury
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 253
    Points : 307
    Points
    307
    Par défaut
    Sans if visibles, pas sûr que ça compte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    #include <iostream>
     
    int main()
    {
      int chiffre = 0;  
      while( std::cin >> chiffre )
        for( ; chiffre; chiffre /=10 )
          std::cout << ( chiffre % 10 ) << std::endl;
    }
    Sinon, pour le post orignal, il doit y avoir un main déjà défini dans le fichier part2.cpp

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Il y avait effectivement plus d'un fichier ccp d'ouvert d'ou le message d'erreur!

    Merci a tous pour votre aide!!

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 18/09/2007, 11h25
  2. Garder en mémoire les valeurs entrées par l'utilisateur
    Par dessinateurttuyen dans le forum Langage
    Réponses: 11
    Dernier message: 17/08/2006, 09h15
  3. Réponses: 9
    Dernier message: 01/07/2006, 20h04
  4. Réponses: 5
    Dernier message: 27/09/2005, 17h25

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