1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Menu em c++

Discussão em 'Programação' iniciada por Uzumaki_Manu, 12 de Março de 2009. (Respostas: 8; Visualizações: 4501)

  1. Uzumaki_Manu

    Uzumaki_Manu Power Member

    Boas zwamanos,
    É assim:
    Estou a fazer um progamita que está acabado, só falta mesmo o menu.
    Quero fazer um menu com 3 opçoes, e uma delas é saír do programa.
    Até aí tudo bem.
    O meu problema está que quando o utilizador escolhe saír, o programa deve perguntar se deseja mesmo saír.
    Se escolher 'S', sai, se escolhe 'N', volta ao inicio.
    E aqui está o problema.
    Como volto para o inicio do programa?
    É que se eu escolher 'N', simplesmente me aparece "Prima qualquer tecla para saír", e eu quero voltar ao inicio.
    Sei que isto não é muito complicado, mas tive no programa toda a tarde, que agora a mais pequena coisa é um problema enorme.
    Cumps
     
  2. OubeLa

    OubeLa Power Member

    Podes fazer com um ciclio while. Caso escolha S, termina a aplicação, caso escolha N faz continue; e volta a correr o ciclo.
     
  3. Uzumaki_Manu

    Uzumaki_Manu Power Member

  4. Uzumaki_Manu

    Uzumaki_Manu Power Member

    Boas outra vez...
    Bem..
    O codigo é assim:
    Código:
    do
        {
            system("cls");
            printf("    CORRECCAO AUTOMATICA DE TESTES\n\n\n\n        MENU PRINCIPAL\n\n\n");
            printf("        1-ALUNOS\n        2-DISCIPLINAS\n        3-TESTES\n        4-RESPOSTAS\n        5-SAIR\n");
        
        
            printf("        Escolha uma opcao acima: \n");
            scanf("%d",&opcao);
    
        
            switch (opcao)
            {
            case 1:
               printf("1");
                
                break;
    
    
    
            case 2:
                printf("Deseja mesmo sair? (S/N)");
                scanf("%d",&r);
               
                if (r=='S'){
                    
                    exit();}
                
            }
            
         }while(opcao>0||opcao<3);
     
    O problema está que me faz um do 4ever e nunca sai.
    Se me puderem ajudar serei muito agradecido.
    Cumps
     
    Última edição pelo moderador: 16 de Março de 2009
  5. |-PiMpaNs-|

    |-PiMpaNs-| Banido

    Boas,

    Bem pelo que tou a perceber, tens de meter opcao=1 || opção=2 , porque num OU basta ter um 1 para ser V, ou seja, se metes opcao>0 OU qualquer numero que ele meta que seja superior vai caber em V, ou seja, nunca vai sair...Se nao me esta a falhar nada!

    Obrigado
     
  6. uni

    uni Power Member

    Eu costumo usar assim, no fim do código:

    Código:
    cout << " Deseja repetir?: \n";
        cin >> i;
        if(strcmp(i, "sim")== 0)
         {
           system("cls"); 
           return main();
         }
        else
         {
           system("PAUSE");
           return EXIT_SUCCESS;
         }
     
  7. 1. ALUNOS



    ALUNOS
    1 - INCLUSÃO
    2 - ALTERAÇÃO
    3 - CONSULTA
    4 - EXCLUSÃO
    0 - RETORNAR
    OPÇÃO : _

    INTRODUCAO DE CONTA

    NOME :
    MORADA :
    IDADE :
    TELEFONE :
    TURMA :


    ALTERAÇÃO DE ALUNO
    NOME :
    MORADA :
    IDADE :
    TELEFONE :
    TURMA :
    CONFIRMA ALTERAÇÃO ( S/N ) ? _
    NOVA ALTERAÇÃO ( S/N ) ? _

    CONSULTA DE ALUNO

    NOME :
    MORADA :
    IDADE :
    TELEFONE :
    TURMA :
    NOVA CONSULTA ( S/N ) ? _



    Alguem me ajuda para fazer esse programa??
    Agradeço.
     
  8. Darien

    Darien Power Member

    Qual é o teu problema? Só tens dificuldade na parte do menu?

    Se mostrares o que já fizeste ou disseres quais são as dúvidas concretas fica mais fácil ajudar.
     

Partilhar esta Página