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 :

[débutant]Comment entrer un nom et l'afficher à l'écran?


Sujet :

C++

  1. #1
    Membre du Club Avatar de Antigonos Ier Gonatas
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 78
    Points : 40
    Points
    40
    Par défaut [débutant]Comment entrer un nom et l'afficher à l'écran?
    Bonjour à tous!


    J'ai une petite question de débutant, j'ai essayé de faire un petit programme pour tester les boucles, mais deux problèmes sont survenus:

    -le programme ne ressort à l'écran que la première lettre du nom que j'ai entré.

    -le programme me sort le nombre 0 pour l'age quelque soit le nombre entré.

    Dans la foulée, j'aimerais savoir comment empêcher l'utilisateur de saisir des données incorrectes grâce aux boucles, exemple en autorisant seulement d'entrer un age entre 0 et 100.

    Merci d'avance pour vôtre aide!

    (en espérant ne pas avoir posé une question trop bête )

  2. #2
    Membre du Club Avatar de Antigonos Ier Gonatas
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 78
    Points : 40
    Points
    40
    Par défaut
    Pour plus de précision, voici à quoi ressemble mon programme:

    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
    #include <iostream>
    #include <conio.h>
     
    using namespace std;
     
     
    class personne
    {
          char nom[25];
          unsigned int age;
          };
    int main()
     
    {
        char nom;
        unsigned int age;
     
             cout<<"Bonjour, comment vous appelez vous?"<<endl;
             cin>> nom;
             cout<<"Quel age avez vous?"<<endl;
             cin>> age ;
     
             cout<<"Vous vous appelez donc " << nom << endl;
             cout<<"et vous avez " << age << " ans.";
     
     
     
     
             _getch();
             return 0;
             }

  3. #3
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Ca fait un peu mal de voir ce genre de probléme.

    Tu déclares nom comme étant une variable de type caractère donc tu ne pourras pas saisir plus d'un caractère il faut utiliser std::string.

    Ta class personne elle sert a quoi ?

  4. #4
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 266
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 266
    Points : 6 688
    Points
    6 688
    Billets dans le blog
    2
    Par défaut
    * Erreur typique:
    ta variable est un char, donc une lettre. Si tu veux avoir une chaine de caractères, il te faudrait un char*.

    * Que veux-tu dire par
    le programme me sort le nombre 0 pour l'age quelque soit le nombre entré.
    * N'utilise pas de char* (ou char[24], c'est la même chose), mais les string (std::string). char* c'est du C et c'est dangereux à utiliser. std::string c'est du c++ et c'est sécurisé et optimisé. Et c'est infiniment plus facile à utiliser.

    Hope it helps.

    [edit]grillé par hegros [/edit]

  5. #5
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    salut,

    classe personne
    pas utilisée
    char[] bof, std::string mieux (voif FAQ)

    main
    nom = char, normal qu'il n'y ait qu'un caractère a s'afficher
    age qui déconne, parce que lorsque tu rentres un nom de plusieurs caractères le 1er va dans le char et le reste dans age.
    getch (conio.h), voir FAQ pour garder la console ouverte à la fin du prog.

    EDIT : grillé par Hegros et R0d

  6. #6
    Membre du Club Avatar de Antigonos Ier Gonatas
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 78
    Points : 40
    Points
    40
    Par défaut
    Merci pour vos réponses et désolé pour mes questions débiles, mais bon, quand on débute .

  7. #7
    Membre Expert

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Juin 2003
    Messages
    4 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 506
    Points : 5 723
    Points
    5 723
    Par défaut
    Il faut prendre le temps,et surtout quand on débute,de lire les FAQ. Il y a une FAQ C++ sur ce site.

    Mieux vaut prendre les bonnes habitudes dés le début.

    Bon courage !

  8. #8
    Membre éclairé Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Points : 795
    Points
    795
    Par défaut
    J'ai essayé de faire un petit programme pour tester les boucles
    Donc je pense qu'en parlant de boucles, tu souhaites que ton programme recommence tant que l'utilisateur ne lui demande pas d'arrêter?
    Pour ça, tu peux introduire dans ton programme une boucle dans ce style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    do
    {
    ...
    ...
    cout<<"Voulez-vous recommencer?[oui/non]"<<endl;
    cin>>reponse;
    }
    while(reponse=="oui")
    system("pause");  //perso, je préfère ça à getch
    ...
    Ensuite, pour teste si l'âge entré est probable, tu peux mettre une condition comme celle qui suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(age>100)
      cout<<"age trop grand, veuillez reessayer au prochain tour!"<<endl;
    A+

    Edit: grillé par tout le monde

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/02/2008, 14h24
  2. Débutant: Comment changer de nom d'onglet ?
    Par billy78 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/06/2007, 16h48
  3. Réponses: 2
    Dernier message: 04/06/2007, 10h39
  4. [Débutant] Comment avoir un nom de domaine en .com ?
    Par Max Payne dans le forum Domaines
    Réponses: 3
    Dernier message: 26/01/2007, 23h38
  5. [débutante] comment afficher une page asp ?
    Par boucher_emilie dans le forum ASP
    Réponses: 5
    Dernier message: 29/06/2004, 09h40

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