Partage
  • Partager sur Facebook
  • Partager sur Twitter

probleme boucles

Sujet résolu
    18 décembre 2005 à 10:41:04

    Bonjour et merci de votre aide!
    Voila, mon programme marchait bien mais , il n'avait pas de boucle .
    Hier j'ai voulu mettre une boucle pour que le programme demande a l'utilisateur si il veut recommencer et depuis rien ne s'affiche dans la console quand je lance le programme.
    Je remercie ceux qui pourront m'aider...
    #include <stdio.h>
    #include <stdlib.h>

    int main (int argc, char *argv[])
    {
      int retour = 1, i = 0;
    double euro=0, franc =0, valeur =6.55, resultat=0, recommencer;
       long choixmenu =0;



    system ("CLS");
        while (retour == 1);
    {

    printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
    printf ("merci de choisir ce que vous voulez faire\n\n");
    printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
    scanf ("%ld", &choixmenu);
     if (choixmenu == 1)
    { printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

    scanf ("%lf", &euro);
    resultat = euro * valeur;
    printf ("\n\n");
    printf ("%lf * %lf = %2lf", euro, valeur, resultat);
    printf ("\n\n");
    printf ("%lf euro est egale a %2lf franc", euro, resultat);
    printf ("\n\n");
    }

    if (choixmenu == 2)
    {
    printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
    printf ("\n\n");
    scanf ("%lf", &franc);
    resultat = franc / valeur;
    printf ("%lf/%lf=%2lf", franc, valeur, resultat);

      switch (i)
               {

                      case 1:

                           retour = 1;
                           break;

                    }

    }



    system ("pause");
    return 0;
    }

    }
    • Partager sur Facebook
    • Partager sur Twitter
      18 décembre 2005 à 10:46:45

      On ne met pas de point virgule à un while ;)
      • Partager sur Facebook
      • Partager sur Twitter
        18 décembre 2005 à 10:54:19

        Tu devrais enlever system("CLS") et system("pause") : ils rendent le programme non portable (ca marche pas sous Mac ou Linux).

        C'est effectivement le while(); qui pose probleme je pense.
        • Partager sur Facebook
        • Partager sur Twitter
          18 décembre 2005 à 11:00:12

          merci.
          le probleme c'est que la boucle ne marche pas...
          quelqun peut m'aider

          #include <stdio.h>
          #include <stdlib.h>

          int main (int argc, char *argv[])
          {
            int retour = 1, i = 0;
          double euro=0, franc =0, valeur =6.55, resultat=0, recommencer;
             long choixmenu =0;



          system ("CLS");
              while (retour == 1)
          {

          printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
          printf ("merci de choisir ce que vous voulez faire\n\n");
          printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
          scanf ("%ld", &choixmenu);
           if (choixmenu == 1)
          { printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

          scanf ("%lf", &euro);
          resultat = euro * valeur;
          printf ("\n\n");
          printf ("%lf * %lf = %2lf", euro, valeur, resultat);
          printf ("\n\n");
          printf ("%lf euro est egale a %2lf franc", euro, resultat);
          printf ("\n\n");
          }

          if (choixmenu == 2)
          {
          printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
          printf ("\n\n");
          scanf ("%lf", &franc);
          resultat = franc / valeur;
          printf ("%lf/%lf=%2lf", franc, valeur, resultat);

            printf ("pour retourner dans le menu principal taper 1, pour quiter tapez 2");
            scanf ("%ld", recommencer);
            switch (i)
                     {

                            case 1:

                                 retour = 1;
                                 break;

                                 case 2:
                                 retour = 0;
                                 break;

                          }

          }



          system ("pause");
          return 0;
          }

          }
          • Partager sur Facebook
          • Partager sur Twitter
            18 décembre 2005 à 11:11:57

            Ben déjà pour le dernier scanf tu as oublié le & devant le nom de la variable ;) Sinon, je vois pas !
            • Partager sur Facebook
            • Partager sur Twitter
              18 décembre 2005 à 11:12:50

              Merci mais ca ne marche toujours pas
              #include <stdio.h>
              #include <stdlib.h>

              int main (int argc, char *argv[])
              {
                int retour = 1, i = 0;
              double euro=0, franc =0, valeur =6.55, resultat=0, recommencer=0;
                 long choixmenu =0;



              system ("CLS");
                  while (retour == 1)
              {

              printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
              printf ("merci de choisir ce que vous voulez faire\n\n");
              printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
              scanf ("%ld", &choixmenu);
               if (choixmenu == 1)
              { printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

              scanf ("%lf", &euro);
              resultat = euro * valeur;
              printf ("\n\n");
              printf ("%lf * %lf = %2lf", euro, valeur, resultat);
              printf ("\n\n");
              printf ("%lf euro est egale a %2lf franc", euro, resultat);
              printf ("\n\n");
              }

              if (choixmenu == 2)
              {
              printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
              printf ("\n\n");
              scanf ("%lf", &franc);
              resultat = franc / valeur;
              printf ("%lf/%lf=%2lf", franc, valeur, resultat);

                printf ("pour retourner dans le menu principal taper 1, pour quiter tapez 2");
                scanf ("%ld", &recommencer);
                switch (i)
                         {

                                case 1:

                                     retour = 1;
                                     break;

                                     case 2:
                                     retour = 0;
                                     break;

                              }

              }





              return 0;
              }

              }
              • Partager sur Facebook
              • Partager sur Twitter
                18 décembre 2005 à 11:22:02

                #include <stdio.h>
                #include <stdlib.h>

                int main (int argc, char *argv[])
                {
                int retour = 1, i = 0;
                double euro=0, franc =0, valeur =6.55, resultat=0, recommencer;
                long choixmenu =0;


                do
                {

                printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
                printf ("merci de choisir ce que vous voulez faire\n\n");
                printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
                scanf ("%ld", &choixmenu);
                 
                if (choixmenu == 1)
                {
                printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

                scanf ("%lf", &euro);
                resultat = euro * valeur;
                printf ("\n\n");
                printf ("%lf * %lf = %2lf", euro, valeur, resultat);
                printf ("\n\n");
                printf ("%lf euro est egale a %2lf franc", euro, resultat);
                printf ("\n\n");
                }

                if (choixmenu == 2)
                {
                printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
                printf ("\n\n");
                scanf ("%lf", &franc);
                resultat = franc / valeur;
                printf ("%lf/%lf=%2lf", franc, valeur, resultat);
                }

                printf ("pour retourner dans le menu principal taper 1, pour quiter tapez 2");
                scanf ("%ld", &recommencer);

                if (recommencer == 1)
                   retour = 1;
                else
                   retour = 0;
                } while (retour == 1);


                system ("pause");
                return 0;
                }
                • Partager sur Facebook
                • Partager sur Twitter
                  18 décembre 2005 à 11:27:42

                  Merci mais cela ne marche toujours pas
                  • Partager sur Facebook
                  • Partager sur Twitter
                    18 décembre 2005 à 11:38:13

                    C'est compliquer et ca sert a rien votre if...else a la fin.

                    faite comme ca ca marche chez moi:

                    #include <stdio.h>
                    #include <stdlib.h>

                    int main (int argc, char *argv[])
                    {
                            int retour = 1, i = 0;
                            double euro=0, franc =0, valeur =6.55, resultat=0;
                            long choixmenu =0;


                            do
                            {
                                    printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
                                    printf ("merci de choisir ce que vous voulez faire\n\n");
                                    printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
                                    scanf ("%ld", &choixmenu);
                     
                                    if (choixmenu == 1)
                                    {
                                            printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

                                            scanf ("%lf", &euro);
                                            resultat = euro * valeur;
                                            printf ("\n\n");
                                            printf ("%lf * %lf = %2lf", euro, valeur, resultat);
                                            printf ("\n\n");
                                            printf ("%lf euro est egale a %2lf franc", euro, resultat);
                                            printf ("\n\n");
                                    }

                                    if (choixmenu == 2)
                                    {
                                            printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
                                            printf ("\n\n");
                                            scanf ("%lf", &franc);
                                            resultat = franc / valeur;
                                            printf ("%lf/%lf=%2lf", franc, valeur, resultat);
                                    }

                                    printf ("pour retourner dans le menu principal taper 1, pour quiter tapez 2  ");
                                    scanf ("%ld", &retour);

                            } while (retour == 1);

                            return 0;
                    }
                    • Partager sur Facebook
                    • Partager sur Twitter
                      18 décembre 2005 à 11:41:46

                      ca ne marche pas ,ca ne veut pas compiler si je fais ca
                      #include <stdio.h>
                      #include <stdlib.h>

                      int main (int argc, char *argv[])
                      {
                              int retour = 1, i = 0;
                              int retour2 =1;
                              double euro=0, franc =0, valeur =6.55, resultat=0;
                              long choixmenu =0;


                              do
                              {
                                      printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
                                      printf ("merci de choisir ce que vous voulez faire\n\n");
                                      printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
                                      scanf ("%ld", &choixmenu);

                                      if (choixmenu == 1)
                                      {
                                              printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

                                              scanf ("%lf", &euro);
                                              resultat = euro * valeur;
                                              printf ("\n\n");
                                              printf ("%lf * %lf = %2lf", euro, valeur, resultat);
                                              printf ("\n\n");
                                              printf ("%lf euro est egale a %2lf franc", euro, resultat);
                                              printf ("\n\n");
                                      }
                         printf ("pour revenir au menu principal taper 1\n pour quitter tapper 2\n\n");
                                      scanf ("%ld", &retour);


                                      }while (retour ==1);
                      </couleur>
                                      if (choixmenu == 2)
                                      {
                                              printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
                                              printf ("\n\n");
                                              scanf ("%lf", &franc);
                                              resultat = franc / valeur;
                                              printf ("%lf/%lf=%2lf", franc, valeur, resultat);
                                      }

                                      printf ("pour retourner dans le menu principal taper 1, pour quiter tapez 2  ");
                                      scanf ("%ld", &retour);


                              }while (retour == 1);

                              return 0;
                      }


                      merci de votre aide
                      • Partager sur Facebook
                      • Partager sur Twitter
                        18 décembre 2005 à 13:07:53

                        voila comme sasa devrai marcher :


                        #include <stdio.h>
                        #include <stdlib.h>
                        #include <math.h>

                        int main (int argc, char *argv[])
                        {
                           int retour = 1, i = 0;
                           double euro=0, franc =0, valeur =6.55, resultat=0, recommencer;
                           long choixmenu =0;



                        system ("CLS");
                            while (retour == 1)
                        {

                        printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
                        printf ("merci de choisir ce que vous voulez faire\n\n");
                        printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
                        scanf ("%ld", &choixmenu);
                         if (choixmenu == 1)
                        { printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

                        scanf ("%lf", &euro);
                        resultat = euro * valeur;
                        printf ("\n\n");
                        printf ("%lf * %lf = %2lf", euro, valeur, resultat);
                        printf ("\n\n");
                        printf ("%lf euro est egale a %2lf franc", euro, resultat);
                        printf ("\n\n");
                        }

                        if (choixmenu == 2)
                        {
                        printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
                        printf ("\n\n");
                        scanf ("%lf", &franc);
                        resultat = franc / valeur;
                        printf ("%lf/%lf=%2lf", franc, valeur, resultat);

                          printf ("pour retourner dans le menu principal taper 1, pour quiter tapez 2");
                          scanf ("%ld", &retour);
                          switch (retour)
                                   {

                                          case 1:

                                               retour = 1;
                                               break;

                                               case 2:
                                               retour = 0;
                                               break;

                                        }

                        }



                        system ("pause");
                        return 0;
                        }

                        }
                        • Partager sur Facebook
                        • Partager sur Twitter
                          18 décembre 2005 à 13:22:32

                          nan ca ne marche pas!!
                          le code qu'avait mis boobaa marchait pour if choix menu =2.
                          mais j'ai fais pareil pour if choix menu = 1 et la ca ne marche plus....
                          que faire
                          • Partager sur Facebook
                          • Partager sur Twitter
                            18 décembre 2005 à 13:38:29

                            c'est bon je les tester si tu fais 1 t'est au menu principele et si tu fais 2 sa quitte.


                            #include <stdio.h>
                            #include <stdlib.h>
                            #include <math.h>

                            int main (int argc, char *argv[])
                            {
                               int retour = 1, i = 0;
                               double euro=0, franc =0, valeur =6.55, resultat=0, recommencer;
                               long choixmenu =0;



                            system ("CLS");
                                while (retour == 1)
                            {

                            printf ("bonjour et bienvenue dans le convertisseur euro par pipolas\n\n");
                            printf ("merci de choisir ce que vous voulez faire\n\n");
                            printf ("convertisseur euro->franc\nconvertisseur franc->euro\n\n");
                            scanf ("%ld", &choixmenu);

                             if (choixmenu == 1)
                             
                            { printf ("vous avez choisi le convertisseur euro->franc\nmerci de rentrer le nombre en euro que vous voulez convertir\n");

                            scanf ("%lf", &euro);
                            resultat = euro * valeur;
                            printf ("\n\n");
                            printf ("%lf * %lf = %2lf", euro, valeur, resultat);
                            printf ("\n\n");
                            printf ("%lf euro est egale a %2lf franc", euro, resultat);
                            printf ("\n\n");
                            }

                            if (choixmenu == 2)
                            {
                            printf ("vous avez choisi le convertisseur franc->euro\nmerci de rentrez le nombre en franc que vous voulez convertir\n");
                            printf ("\n\n");
                            scanf ("%lf", &franc);

                            resultat = franc / valeur;

                            printf ("%lf/%lf=%2lf", franc, valeur, resultat);
                            }

                            printf (" si vous voulez retourner au menu principale taper 1 sinon taper 2 pour quitter\n:");
                            scanf ("%ld", &retour);
                            switch (retour)
                            {
                                   case 1:
                                   choixmenu = 1;
                                   retour = 1;
                                   break;
                                   case 0:
                                   choixmenu = 0;
                                   retour = 0;
                                   break;
                            }
                            }
                              system("PAUSE");     
                              return 0;
                            }
                            • Partager sur Facebook
                            • Partager sur Twitter
                              18 décembre 2005 à 13:59:51

                              C'est un programme que j'avais aussi penser faire, mais le seul petit problème était que la valeur de l'euro change tout le temps. ^^
                              Enfin pas trop mais bon...

                              Un programme qui converti les températures, serait une bonne idée!

                              °C --> °F
                              • Partager sur Facebook
                              • Partager sur Twitter
                                18 décembre 2005 à 14:21:15

                                merci beaucoup tout est rentré dans l'ordre.
                                Je pensse que, je vais faire un programme qui regroupe calculatrice, convertisseur monétaire (livre, euro, dollar...)et convertisseur température
                                • Partager sur Facebook
                                • Partager sur Twitter

                                probleme boucles

                                × 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