Stopper le programme

Stopper le programme - C++ - Programmation

Marsh Posté le 27-11-2013 à 20:00:30    

Bonjour je débute en C++ et j'ai tenté ,pour m'entraîner, de crée un petit quiz contenant dix question (Forme du programme:
 
int i;
 
cout<< "Citer un président de france :" << endl << "1)Georges Washington" << endl << "2)François hollande" << endl << "3) Charle de Gaule" << endl << endl << "Reponse:";
 
cin >> i;
 
if (i==3) cout << "Gagné"
 
else cout << "Perdu" ; )
 
Le problème c'est que quand l'utilisateur met une mauvaise réponse il y a écrit perdu et il peux quand même accéder aux autre question. J'aimerai savoir si il existe quelque chose qui permet de fermer ou de bloquer le reste du programme si l'utilisateur met une mauvaise réponse du style "exit".
 
Merci d'avance !

Reply

Marsh Posté le 27-11-2013 à 20:00:30   

Reply

Marsh Posté le 27-11-2013 à 22:50:05    

Pour "sortir" d'un programme C++, il s'agit de "sortir" de la fonction main.
 
Un simple return [code erreur] suffit...

Reply

Marsh Posté le 28-11-2013 à 09:21:24    

Salut, Ton programme n'as l'air pas super bon...
J'ai fait un copier coller de ton programme, et je l'est corriger
 
 
 
#include <iostream>
using namespace std;
int main()
{
int i;
cout<< "Citer un président de france :" << endl << "1)Georges Washington" << endl << "2)Francois hollande" << endl << "3) Charle de Gaule" << endl << endl << "Reponse:";
cin >> i;
if (i==3) cout << "Gagner" << endl;    
    else cout << "Perdu" << endl;
    return 0 ;
}
 
J'ai mis en ROUGE ce que j'ai corriger
( Les accents sur E ou autre ne son pas trop top dans les consoles quand tu exécute ton programme comme dans : Gagné , c'est mieux de mettre : gagner ou gagne.)
Oublie pas que après <<"perdu"<<endl; -> tu dois toujours fermer en mettant <<
Oublie pas le endl; pour le retour a la ligne.
Et pour fermer ton programme, tu met return 0 ; ça annoncera en gros que ton programme est terminer et il le fermera automatiquement.
 
 
 
ps: François hollande n'est pas un président français? pourquoi il met perdu quand on tape 2 ?
 
Maintenant tu peu faire beaucoup plus encore.. dans ton programme..  
Personnellement je débute aussi, je m'amuse a faire des petits programmes, et j'essaie de les améliorer.

Reply

Marsh Posté le 28-11-2013 à 20:59:18    

C'est juste un entrainement.. Juste pour m'exercer si je me serais appliquer sur les questions je pense qu'elles ne ressemblerait pas à ça ;)
Merci pour ta réponse mais j'ai déjà essayer ça mais ce que je veux c'est que quand l'utilisateur tape 3 il puisse continuer le quiz alors que si il tape 2 ou 1 il arrête

Reply

Marsh Posté le 28-11-2013 à 21:26:54    

Salut.
On redemande une réponse tant que l'utilisateur répond autre chose que 1, 2 ou 3.
Si la réponse est différente de trois, on sort du programme avec return 0.

Code :
  1. #include <iostream>
  2. using namespace std;
  3. int main() {
  4. int i;
  5. do
  6. {
  7. cout<< "Citer un président de france :" << endl << "1)Georges Washington" << endl << "2)Francois hollande" << endl << "3) Charle de Gaule" << endl << endl << "Reponse:";
  8.  cin >> i;
  9. } while(i != 1 && i != 2 && i != 3);
  10. if (i != 3)
  11. {
  12.  cout << "Perdu" << endl;
  13.  return 0;
  14. }
  15. cout << "Gagner" << endl;
  16.     do
  17. {
  18.     cout<< "Citer un président américain :" << endl << "1)George Washington" << endl << "2)Barack Obama" << endl << "3) Silvio Berlusconi" << endl << endl << "Reponse:";
  19.  cin >> i;
  20. } while(i != 1 && i != 2 && i != 3);
  21. if (i != 1)
  22. {
  23.  cout << "Perdu" << endl;
  24.  return 0;
  25. }
  26. cout << "Gagner" << endl;
  27. //etc.
  28. return 0;
  29. }


Message édité par honrisse le 28-11-2013 à 21:47:39
Reply

Marsh Posté le 29-11-2013 à 17:28:25    

Merci beaucoup !!

Reply

Marsh Posté le 20-12-2013 à 10:45:59    

evilyndra a écrit :

Salut, Ton programme n'a pas l'air super bon...
J'ai fait un copier coller de ton programme, et je l'ai corrigé
 
 
 
#include <iostream>
using namespace std;
int main()
{
int i;
cout<< "Citer un président de france :" << endl << "1)Georges Washington" << endl << "2)Francois hollande" << endl << "3) Charle de Gaule" << endl << endl << "Reponse:";
cin >> i;
if (i==3) cout << "Gagné"<< endl;   // Si si c'est bien 'é' c'est un participe passé
    else cout << \"Perdu\" << endl;
    return 0 ;
}
 
J'ai mis en ROUGE ce que j'ai corrigé
( Les accents sur E ou autres ne sont pas trop top dans les consoles quand tu exécutes ton programme comme dans : Gagné , c'est mieux de mettre : gagner ou gagne.) ouch, recommander de faire des fautes...
N'oublie pas que après <<"perdu"<<endl; -> tu dois toujours fermer en mettant <<
N'oublie pas le endl; pour le retour à la ligne.
Et pour fermer ton programme, tu mets return 0 ; ça annoncera en gros que ton programme est terminé et il le fermera automatiquement.
 
 
 
ps: François hollande n'est pas un président français? pourquoi il met perdu quand on tape 2 ?
 
Maintenant tu peux faire beaucoup plus encore.. dans ton programme..  
Personnellement je débute aussi, je m'amuse a faire des petits programmes, et j'essaie de les améliorer.


 
Désolé je n'ai pas pu résister quand j'ai vu quelqu'un "corriger" un participe passé correct par un infinitif. Surtout que pour être logique "Perdu" aurait dû être remplacé par "Perdre" dans ce cas.
 [:grammar nazi]
 
</modeSomeoneIsWrongOnTheInternet>
http://imgs.xkcd.com/comics/duty_calls.png


Message édité par ptitchep le 20-12-2013 à 10:49:53

---------------
deluser --remove-home ptitchep
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed