Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme de sorti de boucle

J'ai un code avec plein de boucle (switch) imbriqué et sa pose problème

    21 décembre 2005 à 18:33:20

    Voila mon code

    switch (choix_sous_menu)
                {
                       case 1:
                            printf("Choisissez la longeur a calculer:\n");
                            printf("1-L'hypotenuse:\n");
                            printf("2-Un cote du triangle:\n");
                           
                            printf("Choisissez ce que vous voulez faire grace au numero du menu\n");
                            scanf("%d", &choix_sous_menu2);
                            system("CLS");
                           
                            switch (choix_sous_menu2)
                            {
                                case 1:
                                     printf("Dans un triangle rectangle le carre de la longueur de l'hypotenuse\n");
                                     printf("est egal a la somme des carres des longueurs des deux autres cotes.\n");
                                     printf("BC au carre = AB au carre + AC au carre\n\n");
                                     
                                     printf("Indiquez la valeur de AB:\n");
                                     scanf("%f", &cote1);
                                     printf("Indiquez la valeur de AC:\n");
                                     scanf("%f", &cote2);
                                     resultat1= pow(cote1, 2) + pow(cote2, 2);
                                     printf("L'hypotenuse du triangle vaut donc:\n");
                                     printf("%0.3f", resultat1);
                                     break;
                                case 2:
                                     printf("Dans un triangle rectangle le carre de la longueur de l'hypotenuse\n");
                                     printf("est egal a la somme des carres des longueurs des deux autres cotes.\n");
                                     printf("BC au carre = AB au carre + AC au carre\n\n");
                                     
                                     printf("Indiquez la valeur de l'hypotenuse:\n");
                                     scanf("%f", &cote1);
                                     printf("Indiquez la valeur d'un des 2 cotes:\n");
                                     scanf("%f", &cote2);
                                     resultat1= pow(cote1, 2) - pow(cote2, 2);
                                     printf("Le troisieme cote vaut:\n");
                                     printf("%f", resultat1);
                                     break;
                                     default:
                                             printf("Vous avez entrer un mauvais numero");
                                     }
                                     
                       case 2:
                            printf("\nSi dans un triangle, le carre de la longueur du plus grand cote\n");
                            printf("est egale a la somme des carres des longueurs des deux autres cotes\n");
                            printf("alors ce triangle est rectangle\n");
                           
                            printf("Indiquez la valeur du plus grand cote\n:");
                            scanf("%f", &cote1);
                            printf("Indiquez la valeur des 2 autres cote\n:");
                            scanf("%f", &cote2);
                            scanf("%f", &cote3);
                            resultat1= pow(cote2, 2) + pow(cote3, 2);
                            nombre1= pow(cote1, 2);
                           
                            if (resultat1 == nombre1)
                                          printf("Le triangle est rectangle.\n");
                            else
                                          printf("Le triangle n'est pas rectangle");
                            break;
                            }                     
               
    }

    printf("\n\nVoulez vous recommencer le programme?:\n\n");
    printf("oui=1         non=0\n");
    scanf("%d", &recommencer);

    }while (recommencer!=0);
     
      return 0;
    }


    Je n'ai recopier que la partie ou il y avait l'erreur:

    donc je reprend le cde depuis le début de ce que j'ai copié:

    je choisi l'hypotenuse donc je tape 1

    ensuiste il me demande bien la valeur de AB et AC
    puis il me donne le resultat et a la fin au lieu d'aller tout a la fin du programme il me renvoie ici


    case 2:
    printf("\nSi dans un triangle, le carre de la longueur du plus grand cote\n");
    printf("est egale a la somme des carres des longueurs des deux autres cotes\n");
    printf("alors ce triangle est rectangle\n");

    printf("Indiquez la valeur du plus grand cote\n:");
    scanf("%f", &cote1);
    printf("Indiquez la valeur des 2 autres cote\n:");
    scanf("%f", &cote2);
    scanf("%f", &cote3);
    resultat1= pow(cote2, 2) + pow(cote3, 2);
    nombre1= pow(cote1, 2);

    if (resultat1 == nombre1)
    printf("Le triangle est rectangle.\n");
    else
    printf("Le triangle n'est pas rectangle");
    break;



    Au lieu de me renvoyer directement la
    printf("\n\nVoulez vous recommencer le programme?:\n\n");
    printf("oui=1 non=0\n");
    scanf("%d", &recommencer);


    Si je n'ai pas été assez clair dite le moi
    merci de votre aide
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      21 décembre 2005 à 18:43:27

      Excuse moi si je me trompe , mais je ne voit pas le debut de ta boucle :(
      • Partager sur Facebook
      • Partager sur Twitter
        21 décembre 2005 à 19:05:30

        Il manque un break aussi.
        • Partager sur Facebook
        • Partager sur Twitter
          21 décembre 2005 à 19:10:25

          edit: merci tout fonctionne il manquait effectivement le break merci rz0
          • Partager sur Facebook
          • Partager sur Twitter

          Probleme de sorti de boucle

          × 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