Votre question

comment revenir au debut ou quitter?

Tags :
  • Programme
  • Programmation
Dernière réponse : dans Programmation
12 Février 2005 19:32:01

Je m'explique,

je programme sous Dev-C++ et j'aimerais savoir comment faire pour faire comme des chapitres.

Au debut je met:

Choisissez options:
1-xxxxxxxxxx
2-xxxxxxxx
3-xxxxxxxxxxx

Puis apres je veux pouvoir accéder à une partie du programme des qu'on entre 1,2 ou 3 .

Je suis sure que c'est une commande avec IF mais je ne sais pas comment faire.

Merci!!

Autres pages sur : revenir debut quitter

13 Février 2005 11:25:31

Salut !
Alors dans ton cas, comme tu va analyser un nombre soit 1, 2 ou 3 mieu vaut utiliser la commande switch.

int main()
{
//La c'est mon menu ...
cout<<"Tapez :\n1-Pour dire bonjour\n2-Pour dire bonsoir\n3-Pour dire Aurvoir<<endl;
//La je déclare un int qui va me servir a stocker le choix de l'utilisateur
int choix;
//Je stocke ce que l'utilisateur à taper à l'écran dans ma variable ...
cin>>choix;
//je l'analyse à l'aide de la méthode switch, mais j'aurai très bien put la faire avec un if
switch(choix)
{
case 1: //si choix vaut 1 alors ...
cout<<"Bonjour !"<<endl;
break;
case 2: //si choix vaut 2 alors ...
cout<<"Bonsoir !"<<endl;
break;
case 3: //si choix vaut 3 alors ...
cout<<"Aurvoir !"<<endl;
break;
}
return 0;
}

Avec un if l'analyse aurait été faite comme ça :
if(choix == 1)
{
//le code à executer ...
}
else if(choix == 2)
{
//le code a executer ...
}
else if(choix == 3)
{
//le code a executer ...
}
else
{
cout<<"Vous ne pouvez taper que 1 ou 2 ou 3"endl;
}

Voila j'espere que j'ai put t'aider ...
@++++
13 Février 2005 15:00:56

Bon merci mais en fait maintenant j'ai fait mon code mais différement.
Ce que j'aimerais c'est pouvoir choisir à chaque fin de "case" soit de revenir au debut, soit de quitter. Et là je bloque.

Mon code :


--------------------------------------
#include <iostream.h>
#include <math.h>

void main()

{
cout<<"Bienvenue dans le programme de calculs!!"<<endl<<endl;
int programme,prog;

cout<<"Entrez le programme voulu:"<<endl;
cout<<"1- Aire/Perimetre d'un rectangle ou d'un carre"<<endl;
cout<<"2- Aire/Perimetre d'un cercle"<<endl;
cout<<"3- Aire d'un triangle (avec hauteur et base)"<<endl;
cout<<"4- Aire/Perimetre d'un triangle (avec 3 cotes)"<<endl;
cin>>programme;

switch (programme)
{
case 1:p rog=1;break;
case 2:p rog=2;break;
case 3:p rog=3;break;
case 4:p rog=4;break;


}

switch (prog)
{
case 1:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire-Perimetre d'un rectangle/carre!"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

char X;
cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
int longueur, largeur;

cout<<"Entrer la longueur du rectangle/carre:";
cin>>longueur;

cout<<"Entrer la largeur du rectangle/carre:";
cin>>largeur;

cout<<"---------------------------------------------"<<endl;
cout<<"Aire du rectangle/carre:"<<largeur*longueur<<endl;
cout<<"Perimetre du rectangle/carre"<<2*largeur+2*longueur<<endl;
cout<<"---------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;

case 2:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire-Perimetre d'un cercle!"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
double rayon,Pi;

cout<<"Entrer mesure du rayon du cercle:";
cin>>rayon;
Pi=3.14;

cout<<"---------------------------------------------"<<endl;
cout<<"Aire du cercle:"<<Pi*rayon*rayon<<endl;
cout<<"Perimetre du cercle:"<<2*Pi*rayon<<endl;
cout<<"--------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;

case 3:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire d'un triangle (avec base et hauteur)"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
double base,hauteur;

cout<<"Entrer mesure de la base:";
cin>>base;
cout<<"Entrer mesure de la hauteur issue du point oppose a la base:";
cin>>hauteur;

cout<<"--------------------------------------------"<<endl;
cout<<"Aire du triangle:"<<(base*hauteur)/2<<endl;
cout<<"--------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;

case 4:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire/perimetre d'un triangle (avec 3 cotes):"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
int cotea,coteb,cotec,p;

cout<<"Entrer les mesures des trois cotes:"<<endl;
cout<<"1er cote:";
cin>>cotea;
cout<<"2e cote:";
cin>>coteb;
cout<<"3e cote:";
cin>>cotec;
p=(cotea+coteb+cotec)/2;

cout<<"--------------------------------------------"<<endl;
cout<<"Aire du triangle:"<<sqrt((p*(p-cotea)*(p-coteb)*(p-cotec)))<<endl;
cout<<"Perimetre du triangle:"<<cotea+coteb+cotec<<endl;
cout<<"--------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;



}}



-----------------------------------------

Voilà, comment pourrais je faire?
Contenus similaires
13 Février 2005 16:22:01

En fait, je sais pas comment revenir au debut ensuite.Si je laisse comme ca quand je demarre par le "case" 1 il me defile tous les "case" les un apres les autres.
Je ne sais pas comment faire pour dire à chaque fin de "case ": quitter ou revenir au debut.
13 Février 2005 16:24:15

un switch() plutôt qu'une série de if ça sera mieux je pense.
13 Février 2005 16:25:04

mais je n'est pas fait de "if", j'ai fait des switch regarde mon code.
13 Février 2005 16:34:22

vous pouvez pas m'aider je suis bloqué depuis deux jours!plz!
13 Février 2005 17:09:16

a chaque fin d'un case il faut mettre la commande "break;" pour qu'il ne deborde par sur les autres case.

Sinon, une simple boucle while ou do/while pour boucler et/ou sortir.
tu fais saisir une var a la fin du switch pour savoir si tu veux sortir de la boucle ou non
13 Février 2005 20:10:41

oué mais tu peux pas m'ecrire un mini exemple parce que là je me perds.

Prenez une partie de mon code et montrez moi comment faire. :-?
13 Février 2005 22:04:44

Salut, je ne suis pas sur de ce code, je ne l'ai pas testé ...

#include <iostream.h>
#include <math.h>
using namespace std;

void main()
{
int programme,prog,envie_quitter;;
bool quitter;
do
{
cout<<"Bienvenue dans le programme de calculs!!"<<endl<<endl;


cout<<"Entrez le programme voulu:"<<endl;
cout<<"1- Aire/Perimetre d'un rectangle ou d'un carre"<<endl;
cout<<"2- Aire/Perimetre d'un cercle"<<endl;
cout<<"3- Aire d'un triangle (avec hauteur et base)"<<endl;
cout<<"4- Aire/Perimetre d'un triangle (avec 3 cotes)"<<endl;
cin>>programme;

switch (programme)
{
case 1:p rog=1;break;
case 2:p rog=2;break;
case 3:p rog=3;break;
case 4:p rog=4;break;
}

switch (prog)
{
case 1:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire-Perimetre d'un rectangle/carre!"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

char X;
cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
int longueur, largeur;

cout<<"Entrer la longueur du rectangle/carre:";
cin>>longueur;

cout<<"Entrer la largeur du rectangle/carre:";
cin>>largeur;

cout<<"---------------------------------------------"<<endl;
cout<<"Aire du rectangle/carre:"<<largeur*longueur<<endl;
cout<<"Perimetre du rectangle/carre"<<2*largeur+2*longueur<<endl;
cout<<"---------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;
break;

case 2:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire-Perimetre d'un cercle!"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
double rayon,Pi;

cout<<"Entrer mesure du rayon du cercle:";
cin>>rayon;
Pi=3.14;

cout<<"---------------------------------------------"<<endl;
cout<<"Aire du cercle:"<<Pi*rayon*rayon<<endl;
cout<<"Perimetre du cercle:"<<2*Pi*rayon<<endl;
cout<<"--------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;
break;

case 3:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire d'un triangle (avec base et hauteur)"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
double base,hauteur;

cout<<"Entrer mesure de la base:";
cin>>base;
cout<<"Entrer mesure de la hauteur issue du point oppose a la base:";
cin>>hauteur;

cout<<"--------------------------------------------"<<endl;
cout<<"Aire du triangle:"<<(base*hauteur)/2<<endl;
cout<<"--------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;
break;

case 4:
cout<<"---------------------------------------------------------------------"<<endl<<endl;
cout<<"Aire/perimetre d'un triangle (avec 3 cotes):"<<endl<<endl;
cout<<"----------------------------------------------------------------------"<<endl<<endl;

cout<<"Veuillez remplir les informations suivantes:"<<endl<<endl;
int cotea,coteb,cotec,p;

cout<<"Entrer les mesures des trois cotes:"<<endl;
cout<<"1er cote:";
cin>>cotea;
cout<<"2e cote:";
cin>>coteb;
cout<<"3e cote:";
cin>>cotec;
p=(cotea+coteb+cotec)/2;

cout<<"--------------------------------------------"<<endl;
cout<<"Aire du triangle:"<<sqrt((p*(p-cotea)*(p-coteb)*(p-cotec)))<<endl;
cout<<"Perimetre du triangle:"<<cotea+coteb+cotec<<endl;
cout<<"--------------------------------------------"<<endl;

cout<<"Taper sur une touche puis appuyer sur Entree pour quitter"<<endl;
cin>>X;
break;
}
cout<<"Voulez-vous quitter ? (tapez 1)"endl;
cin>>envie_quitter;
if(envie_quitter==1)
quitter=true;
else
cout<<"C'est reparti pour un tour !"<<endl;
}
while(quitter!=false)
}
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS