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 :

Pb de vérification d'entrée au clavier


Sujet :

C++

  1. #1
    HNT
    HNT est déconnecté
    Membre actif Avatar de HNT
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    448
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 448
    Points : 293
    Points
    293
    Par défaut Pb de vérification d'entrée au clavier
    Bonjour,

    Je sais que cette question paraitra stupide à la majorité d'entre vous mais bon ... on débute bien un jour,
    alors j'ai pondu le programme suivant et j'ai deux question à son propos :

    1° Je vérifie la donné entre par l'utilisateur, si ce n'est pas un entier, j'affiche un message d'erreur et je le lui demande de recommencer. Le pb ces que ce programme boucle fou dans le cas ou il entre par exemple un caractère à la place de l'entier, comment l'éviter ?

    2° MingW me donne une alerte à la compil : il m'averti parce qu'il n'y as pas de retour chariot en fin de fichier, qu'est-ce que ca veut dire ?
    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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    #include <iostream>
     #include <math.h>
     
     using namespace std;
     
     void multiplication();
     int entrerReponse();
     int aleatoire();
     
     int nbr_rep_juste = 0;
     const int MIN = 1;
     const int MAX = 10;
     
     int main()
     {
    	 while (nbr_rep_juste < 10)
    		 multiplication();
    	 return 0;
     }
     
     void multiplication()
     {
    	int nbrUn = aleatoire();
    	int nbrDeux = aleatoire();
    	int resultat = nbrUn * nbrDeux;
    	cout<<"\nCombien font "<<nbrUn<< " * "<<nbrDeux<< " ? \t";
    	int userReponse = entrerReponse();
    	if (userReponse == resultat)
    	{
    		cout<<"Réponse exacte\n";
    		nbr_rep_juste++;
    	}
    	else
    		cout<<"La réponse était : "<<resultat<<" \n";
     }
     
     int entrerReponse()
     {
    	int reponse;
    	cin>>reponse;
    	if(!cin>>reponse)
    	{
    		cout<<"\nErreur de saisie, recommencez :\t";
    		return entrerReponse();
    	}
    	else
    		return reponse;
     }
     
     int aleatoire()
     {
    	int nombre = (int) random();
    	while (nombre < MIN || nombre > MAX)
    		nombre /= 10;
    	return nombre;
     }
    The box said : "Requires windows 95, NT or better" so I installed Linux.

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920

  3. #3
    HNT
    HNT est déconnecté
    Membre actif Avatar de HNT
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    448
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 448
    Points : 293
    Points
    293
    Par défaut
    +1 pour la faq, dsl.
    Reste la question relative au retour chariot dont je ne comprend pas le sens.
    The box said : "Requires windows 95, NT or better" so I installed Linux.

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    C'est simple, un fichier source doit toujours être terminé par un retour à la ligne (je ne sais plus pour quelle obscure raison), donc il suffit d'en ajouter un à la fin de ton fichier.

  5. #5
    HNT
    HNT est déconnecté
    Membre actif Avatar de HNT
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    448
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 448
    Points : 293
    Points
    293
    Par défaut
    bon d'après ce que je viens de lire c'est pour éviter le problèmes lors de la concaténation éventuelle de deux fichier .cpp merci pour les réponses
    The box said : "Requires windows 95, NT or better" so I installed Linux.

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

Discussions similaires

  1. récupérer une donnée entrée au clavier
    Par simouSQL dans le forum SQL
    Réponses: 7
    Dernier message: 26/06/2007, 14h50
  2. Réponses: 2
    Dernier message: 01/12/2005, 12h24
  3. bouton Ok = Touche Entrée du clavier
    Par Samanta dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 23/08/2005, 17h10
  4. Comment récuperer des données entrées au clavier?
    Par Elisée A. dans le forum MFC
    Réponses: 2
    Dernier message: 13/02/2004, 07h22
  5. [Turbo Pascal] Entrée au clavier sous forme ******
    Par Upal dans le forum Turbo Pascal
    Réponses: 12
    Dernier message: 15/02/2003, 14h42

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