Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de boucle enfin je croix

aider moi svp

    21 décembre 2005 à 13:35:23

    voici mon code:

    #include <stdlib.h>
    #include <string.h>
    #include <stdio.h>
    #include <windows.h>
    #include <math.h>
    int main(int argc, char *argv[])
    {

      int retour = 0, menuPrincipale = 1, menuConvertisseur = 3;
      double resultatDivision = 0, trou = 0, resultatAdition = 0,nombre1 = 0, nombre2 = 0, resultatMultiplication = 0, resultatSoustraction = 0, resultatConvertisseur = 0, nombre3 = 6.55957;
      long operation = 0, choixConvertisseur = 2, convertisseur = 0, choix = 0;
     


        system ("CLS");

        while (menuPrincipale)
       
        {

        printf ("    BIENVENUE DANS LA\n\n ========CALCULOMAGE========\n\n une calculette creer par mageblanc\n\n");
        printf(" salut tout le monde bienvenu sur ma calculette\n");
        printf (" Appuyer sur:\n\n 1.Adition\n 2.Multiplication\n 3.Soustraction\n 4.Division\n 5.Menu Convertion\n");
        scanf ("%ld", &operation)
     

           
        while (operation == 1)
        {
        printf ("========BINVENUE DANS ADDITION========\n\n");
        printf ("alors vous voulez taper une adition\n");
        printf ("taper le nombre 1:\n");
        scanf ("%lf", &nombre1);
        printf ("Taper le nombre 2:\n");
        scanf ("%lf", &nombre2);
       
        resultatAdition = nombre1 + nombre2;
       
        printf ("%lf + %lf = %lf\n\n", nombre1, nombre2, resultatAdition);
        printf ("taper 1 pour refaire une addition taper 2 pour plus d'option\n");
        scanf ("%ld", &retour);
       
        switch (retour)
        {
              case 1:
              operation = 1;
              break;
              case 2:
              operation = 0;
              break;
              default:
              printf("c'est pas se que je vous demande\n bon on reprend");
              }
        }


        while (operation == 2)
         {
          printf ("========BIENVENUE DANS MULTIPLICATION========\n\n");
          printf ("vous voulez taper une multiplication très bien alors aler si taper");
          printf ("Taper nombre 1:\n");
         scanf ("%lf", &nombre1);
         printf ("taper nombre 2:\n");
         scanf ("%lf", &nombre2);
                     
         resultatMultiplication = nombre1 * nombre2;
                     
         printf ("%lf * %lf = %lf\n\n", nombre1, nombre2, resultatMultiplication);
         
         printf ("taper 1 pour refaire une adition taper 2 pour plus d'option");
        scanf ("%ld", &retour);
          switch (retour)
        {
              case 1:
              operation = 2;
              break;
              case 2:
              operation = 0;
              break;
              }
        }
         

     
         
        while (operation == 3)
         {
         printf ("========BIENVENUE DANS SOUSTRACTION========\n\n");
         printf ("vous voulez faire une soustraction ? \n alors allez si\n");
         printf (" Taper nombre 1:\n");
         scanf ("%lf", &nombre1);
         printf ("Taper nombre2 :\n");
         scanf ("%lf", &nombre2);
         
         resultatSoustraction = nombre1 - nombre2;
         
         printf ("%lf - %lf = %lf\n\n", nombre1, nombre2, resultatSoustraction);
         
         printf ("taper 1 pour refaire une adition taper 2 pour plus d'option\n");
        scanf ("%ld", &retour);
          switch (retour)
        {
              case 1:
              operation = 3;
              break;
              case 2:
              operation = 0;
              break;
              }
         }
       
         
         
         while (operation == 4)
         {
        printf ("========BIENVENUE DANS DIVISION========\n\n");     
        printf ("vous voulez faire une division\n");
        printf ("Taper votre nombre 1 ici :\n");
         scanf ("%lf", &nombre1);
        printf ("Taper le nombre 2 ici:\n");
         scanf ("%lf", &nombre2);
               
         resultatDivision = nombre1 / nombre2;
         
        printf ("%lf / %lf = %lf\n\n", nombre1, nombre2, resultatDivision);
         
        printf ("taper 1 pour refaire une operation taper 2 pour plus d'option\n");
        scanf ("%ld", &retour);
          switch (retour)
        {
              case 1:
              operation = 4;
              break;
              case 2:
              operation = 0;
              break;
              }
    }

        while (operation == 5)/* si je tape 5 alors j'atterie ici*/
        {
        printf (" =======BIENVENUE DANS LE CONVERTISSEUR========\n\n");
        printf (" 1. convertisseur Euro/Franc\n 2. convertisseur Franc/Euro\n");
        scanf ("%ld", &choixConvertisseur); /*si je tape 1 alors j'atterie en dessous*/
        operation++; /* pour que operation val 6 et soit faut.*/
        }

        while (choixConvertisseur == 1)
         {
         printf (" =======BIENVENUE DANS LE CONVERTISSUER EURO/FRANC=======\n\n");
         printf (" Taper le nombre a convertir en Franc:\n");
         scanf ("%lf", &nombre1);
         
         resultatConvertisseur = nombre1 * nombre3;
         
        printf ("%lf Euro est egal a %lf Franc\n\n", nombre1, resultatConvertisseur);
       
        printf (" taper 1 pour refaire une convertion\n taper 2 pour plus d'option:\n Taper 3 pour retourner au menu convertion");
        scanf ("%ld", &retour);
        switch (retour)
        {
        case 1:
        choixConvertisseur = 1;
        break;
        case 2:
        choixConvertisseur = 0;
        break;
        case 3:
             choixConvertisseur = 0;
             operation = 5;
        break;
         }
    }

    while (choixConvertisseur == 2)
    {
    printf ("========BIENVENUE DANS CONVERTISSEUR FRANC/EURO========\n\n");
    printf (" Taper le nombre a convertir en Euro:\n");
    scanf ("%lf", &nombre1);

    resultatConvertisseur = nombre1 / nombre3;

    printf ("%lf Franc est egal a %lf Euro\n\n", nombre1, resultatConvertisseur);

    printf (" taper 1 pour refaire une convertion\n taper 2 pour plus d'option:\n Taper 3 pour menu convertion");
    scanf ("%ld", &retour);
    switch (retour)
    {
           case 1:
                choixConvertisseur = 2;
           break;
           case 2:
                choixConvertisseur = 0;
           break;
           case 3:
                choixConvertisseur = 0;
                operation = 5;
           break;
           default:
                   printf ("je ne comprend pas dsl");
           break;
           }
    }

    printf (" pour revenir au menu principale taper 1 sinon taper 0\n");
    scanf ("%ld", &menuPrincipale);
    switch (menuPrincipale)
    {
           case 1:
                menuPrincipale = 1;
           break;
           case 2:
                menuPrincipale = 0;
           break;
    }
    }

    system ("PAUSE");
      return 0;
    }


    j'ai un probleme aavec le convertisseur je demande a mon programme que si on tape 3 a la fin de la convertion sa retourne au menu principale du convertisseur mais sa ne fonctionnes pas.

    aider moi svp

    merci
    • Partager sur Facebook
    • Partager sur Twitter
      21 décembre 2005 à 15:58:57

      Tu n'avais fermé la boucle "while (operation == 5) /* si je tape 5 alors j'atterie ici*/" au bonne endroit, le code source doit être (j'ai testé) :
          #include <stdlib.h>
          #include <string.h>
          #include <stdio.h>
          #include <windows.h>
          #include <math.h>
          int main(int argc, char *argv[])
          {
         
          int retour = 0, menuPrincipale = 1, menuConvertisseur = 3;
          double resultatDivision = 0, trou = 0, resultatAdition = 0,nombre1 = 0, nombre2 = 0, resultatMultiplication = 0, resultatSoustraction = 0, resultatConvertisseur = 0, nombre3 = 6.55957;
          long operation = 0, choixConvertisseur = 2, convertisseur = 0, choix = 0;
         
         
         
          system ("CLS");
         
          while (menuPrincipale)
         
          {
         
          printf ("    BIENVENUE DANS LA\n\n ========CALCULOMAGE========\n\n une calculette creer par mageblanc\n\n");
          printf(" salut tout le monde bienvenu sur ma calculette\n");
          printf (" Appuyer sur:\n\n 1.Adition\n 2.Multiplication\n 3.Soustraction\n 4.Division\n 5.Menu Convertion\n");
          scanf ("%ld", &operation);
         
         
             
          while (operation == 1)
          {
          printf ("========BINVENUE DANS ADDITION========\n\n");
          printf ("alors vous voulez taper une adition\n");
          printf ("taper le nombre 1:\n");
          scanf ("%lf", &nombre1);
          printf ("Taper le nombre 2:\n");
          scanf ("%lf", &nombre2);
         
          resultatAdition = nombre1 + nombre2;
         
          printf ("%lf + %lf = %lf\n\n", nombre1, nombre2, resultatAdition);
          printf ("taper 1 pour refaire une addition taper 2 pour plus d'option\n");
          scanf ("%ld", &retour);
         
          switch (retour)
          {
                case 1:
                operation = 1;
                break;
                case 2:
                operation = 0;
                break;
                default:
                printf("c'est pas se que je vous demande\n bon on reprend");
                }
          }
         
         
          while (operation == 2)
           {
            printf ("========BIENVENUE DANS MULTIPLICATION========\n\n");
            printf ("vous voulez taper une multiplication très bien alors aler si taper");
            printf ("Taper nombre 1:\n");
           scanf ("%lf", &nombre1);
           printf ("taper nombre 2:\n");
           scanf ("%lf", &nombre2);
                       
           resultatMultiplication = nombre1 * nombre2;
                       
           printf ("%lf * %lf = %lf\n\n", nombre1, nombre2, resultatMultiplication);
           
           printf ("taper 1 pour refaire une adition taper 2 pour plus d'option");
          scanf ("%ld", &retour);
            switch (retour)
          {
                case 1:
                operation = 2;
                break;
                case 2:
                operation = 0;
                break;
                }
          }
           
         
         
           
          while (operation == 3)
           {
           printf ("========BIENVENUE DANS SOUSTRACTION========\n\n");
           printf ("vous voulez faire une soustraction ? \n alors allez si\n");
           printf (" Taper nombre 1:\n");
           scanf ("%lf", &nombre1);
           printf ("Taper nombre2 :\n");
           scanf ("%lf", &nombre2);
           
           resultatSoustraction = nombre1 - nombre2;
           
           printf ("%lf - %lf = %lf\n\n", nombre1, nombre2, resultatSoustraction);
           
           printf ("taper 1 pour refaire une adition taper 2 pour plus d'option\n");
          scanf ("%ld", &retour);
            switch (retour)
          {
                case 1:
                operation = 3;
                break;
                case 2:
                operation = 0;
                break;
                }
           }
         
           
           
           while (operation == 4)
           {
          printf ("========BIENVENUE DANS DIVISION========\n\n");     
          printf ("vous voulez faire une division\n");
          printf ("Taper votre nombre 1 ici :\n");
           scanf ("%lf", &nombre1);
          printf ("Taper le nombre 2 ici:\n");
           scanf ("%lf", &nombre2);
                 
           resultatDivision = nombre1 / nombre2;
           
          printf ("%lf / %lf = %lf\n\n", nombre1, nombre2, resultatDivision);
           
          printf ("taper 1 pour refaire une operation taper 2 pour plus d'option\n");
          scanf ("%ld", &retour);
            switch (retour)
          {
                case 1:
                operation = 4;
                break;
                case 2:
                operation = 0;
                break;
                }
          }
       
          while (operation == 5)/* si je tape 5 alors j'atterie ici*/
          {
          printf (" =======BIENVENUE DANS LE CONVERTISSEUR========\n\n");
          printf (" 1. convertisseur Euro/Franc\n 2. convertisseur Franc/Euro\n");
          scanf ("%ld", &choixConvertisseur); /*si je tape 1 alors j'atterie en dessous*/
          operation++; /* pour que operation val 6 et soit faut.*/
         
          while (choixConvertisseur == 1)
           {
           printf (" =======BIENVENUE DANS LE CONVERTISSUER EURO/FRANC=======\n\n");
           printf (" Taper le nombre a convertir en Franc:\n");
           scanf ("%lf", &nombre1);
           
           resultatConvertisseur = nombre1 * nombre3;
           
          printf ("%lf Euro est egal a %lf Franc\n\n", nombre1, resultatConvertisseur);
         
          printf (" taper 1 pour refaire une convertion\n taper 2 pour plus d'option:\n Taper 3 pour retourner au menu convertion");
          scanf ("%ld", &retour);
          switch (retour)
          {
          case 1:
          choixConvertisseur = 1;
          break;
          case 2:
          choixConvertisseur = 0;
          break;
          case 3:
               choixConvertisseur = 0;
               operation = 5;
          break;
           }
          }
         
          while (choixConvertisseur == 2)
          {
          printf ("========BIENVENUE DANS CONVERTISSEUR FRANC/EURO========\n\n");
          printf (" Taper le nombre a convertir en Euro:\n");
          scanf ("%lf", &nombre1);
         
          resultatConvertisseur = nombre1 / nombre3;
         
          printf ("%lf Franc est egal a %lf Euro\n\n", nombre1, resultatConvertisseur);
         
          printf (" taper 1 pour refaire une convertion\n taper 2 pour plus d'option:\n Taper 3 pour menu convertion");
          scanf ("%ld", &retour);
          switch (retour)
          {
             case 1:
                  choixConvertisseur = 2;
             break;
             case 2:
                  choixConvertisseur = 0;
             break;
             case 3:
                  choixConvertisseur = 0;
                  operation = 5;
             break;
             default:
                     printf ("je ne comprend pas dsl");
             break;
             }
          }
      }                    // <----------------------- C'est ici qu'il faut fermer le "while(operation == 5)"
         
          printf (" pour revenir au menu principale taper 1 sinon taper 0\n");
          scanf ("%ld", &menuPrincipale);
          switch (menuPrincipale)
          {
             case 1:
                  menuPrincipale = 1;
             break;
             case 2:
                  menuPrincipale = 0;
             break;
          }
          }
         
          system ("PAUSE");
          return 0;
          }
      • Partager sur Facebook
      • Partager sur Twitter

      Problème de boucle enfin je croix

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown