[c] Petit probeme dans le code source

novocaine Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   -  
ekra Messages postés 1870 Date d'inscription   Statut Membre Dernière intervention   -
Voila je debut en programmation et j'ai deja créais quelques petits programme et j'ai voulus créer un menu qui me permetterais de tous les lancer.

Le principe et simple à chaque numero que l'ont rentre dans le menu correspond un programme qui sera automatiquement executé. Jusque la aucun bug. J'ai voulus introduire une petite amelioration c'est a dire si jamais la valeur entrer est incorrect, le menu la signale et me demande de rentrer une valmeur connus.
Je passe par une boucle "while" mais s'il ne me la lance pas , jai essayé en "do while" idem.


voila je laisse le code endessous

Info j'utilise codebloc++ pour compiler et tester
        //PAGE1
        //-----

            //variable

            int selection;
            long variable=0;
            
            //code
            //****
            system("pause");
            printf("\n\n\n\n\n\n"); //changement de page

            //grafique menu
            printf("                 ______\n");
            printf("           +====<|MENU|>====+\n");
            printf("                 ------\n");
            printf("            1. Trace IP\n");
            printf("            2. Ports scan\n");
            printf("            3. Pass breaker\n\n");
            printf("            enter ur selection\n");
            printf("                 ===>");
            scanf("%ld", &selection);


            //verification
            variable = selection>0&&selection<4; //booleen verification
            
            if(variable)
                {
                printf("\n            [-----------------]\n");
                printf("            |  selection  ok  |\n");
                printf("            [-----------------]\n\n");
                }
                
            else
                {
                    //Boucle de demande

                        while(variable);
                        {
                        //Reinitialisation des variables
                        selection=0;
                        printf("mauvaise selection\n");
                        printf("entrer une valeur correct\n");
                        scanf("%ld", &selection);
                }

            //travail du menu
            switch(selection)
                {
                case 1:
                printf("sousprogramme1\n");
                break;

                case 2:
                printf("sousprogramme2\n");
                break;

                case 3:
                printf("sousprogramme3\n");
                break;
                }

        //affichage
}
return(0);
}


Merci d'avance
Amicalemenet novocaine
A voir également:

1 réponse

ekra Messages postés 1870 Date d'inscription   Statut Membre Dernière intervention   342
 
Bonjour,

Impossible de sortir de là...
while(variable);
                        {
                        //Reinitialisation des variables
                        selection=0;
                        printf("mauvaise selection\n");
                        printf("entrer une valeur correct\n");
                        scanf("%ld", &selection);
                }

essaie plutôt :

        do {

        variable = selection>0&&selection<4; //booleen verification
            
            if(variable)
                {
                printf("\n            [-----------------]\n");
                printf("            |  selection  ok  |\n");
                printf("            [-----------------]\n\n");
                }
                
            else
                {
                 printf("mauvaise selection\n");
                 printf("entrer une valeur correct\n");
                }
      } while (!variable)
0
novocaine Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   7
 
meric beaucoup ;)
0
ekra Messages postés 1870 Date d'inscription   Statut Membre Dernière intervention   342 > novocaine Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai oublié de mettre le scanf dans la boucle :)
0