• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Dany7

Como fazer para de um submenu voltar para o menu principal???? alguem me ajuda

5 mensagens neste tópico

ola Pessoal eu sou novo nisto de programar mas isto e bué fixe..... bem eu tenho de fazer um programa em c++ para apresentar ao profe e ele quer que nos fasamos...

Menu principal para o sub menu ate ai e fácil mas e agora como se faz para do sub menu para o menu principal?

Alguém me pode explicar? eu ja ando a dar com acabeça na parede :wallbash:lol

o trabalho e este:

#include <iostream>
#include <math.h>
int areacirculo(){
   float raio,area;
   printf("  Area do circulo\n");
   printf("\nInsira o raio do circulo!");
   scanf("%f",&raio);
   area=3.14*raio*raio;
   printf("A area do circulo e %f\n\n",area);
   }
int arearectangulo(){
   float c,l,area;
   printf("  Area do rectangulo\n");
   printf("\nInsira o comprimento ");
   scanf("%f",&c);
   printf("\nInsira a largura ");
   scanf("%f",&l);
   area=c*l;
   printf("A area do rectangulo e %f\n\n",area);
}
int areatriangulo(){
   float b,h,area;
   printf("  Area do triangulo\n");
   printf("\nInsira a base ");
   scanf("%f",&b);
   printf("\nInsira a altura ");
   scanf("%f",&h);
   area=b*h/2;
   printf("A area do triangulo e %f\n\n",area);
}
int volumeesfera(){
   float volume,raio,pi;
   pi=3.14;
   printf("  volume da esfera\n");
   printf("\nInsira o raio");
   scanf("%f",&raio);
   volume=4/3*(pi*pow(raio,3));
   printf("%f\n\n",volume);
} 
int volumecubo(){
   float volume,ab,h;
   printf("  volume do cubo\n");
   printf("\nInsira a Area da base");
   scanf("%f",&ab);
   printf("\nInsira a altura");
   scanf("%f",&h);
   volume=ab*h;
   printf("%f\n\n",volume);
}
int volumepiramide(){
   float volume,ab,h;
   printf("  volume da piramide\n");
   printf("\nInsira a Area da base");
   scanf("%f",&ab);
   printf("\nInsira a altura");
   scanf("%f",&h);
   volume=1/3*(ab*h);
   printf("%f\n\n",volume);

} int volumecilindro(){
   float volume,ab,h;
   printf("  volume do cilindrol\n");
   printf("\nInsira a Area da base");
   scanf("%f",&ab);
   printf("\nInsira a altura");
   scanf("%f",&h);
   volume=ab*h;
   printf("%f\n\n",volume);
}
main(){
      int  op;
      op=1;
      while (op!=0){

   printf("**************************\n");
   printf(" 1 Areas                                      *\n");
   printf(" 2 volumes                                  *\n");
   printf(" 0 Sair                                         *\n");
   printf("**************************\n");
   scanf("%d",&op);
       system("cls");
    switch (op){
           case 1:
                printf("****************************\n");
                printf(" 1 Area do circulo                           *\n");
                printf(" 2 Area do rectangulo                    *\n");
                printf(" 3 Area do traingulo                       *\n");
                printf(" 4 voltar ao menu anterior            *\n");
                printf(" 0 Sair                                           *\n");
                printf("****************************\n");
                scanf("%d",&op);
                  system("cls");
                  switch (op){
                         case 1:

                              areacirculo();

                              break;

                              case 2:
                                   arearectangulo();

                                   break;
                                   case 3:
                                        areatriangulo();

                                        break;
                                        case 4:
                                             break;


                                   }
                case 2:
                     printf("**************************\n");
                     printf(" 1 volume da esfera                  *\n");
                     printf(" 2 volume do cubo                    *\n");
                     printf(" 3 volume do cilindro                 *\n");
                     printf(" 4 volume da piramide               *\n");
                     printf(" 5 voltar ao menu principal          *\n");
                     printf(" 0 Sair                                        *\n");
                     printf("**************************\n");
                     scanf("%d",&op);
                     system("cls");
                      switch (op){
                               case 1:
                                    volumeesfera();
                                    break;
                                     case 2:
                                          volumecubo();
                                         break;
                                          case 3:
                                               volumecilindro();
                                             break;
                                             case 4:
                                                  volumepiramide();
                                          break;
                                          case 5:
                                               break;

       }
       }   
        system ("pause");
        }}       

Aguardo resposta...

Abraço pessoal ... :thumbsup:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ola pessoal.... já sei o meu erro.... para poder voltar para o menu anterior e só utilizar nos  utilizar mos o goto  e certo não fica muito bem no programa mas da para esse efeito

Abraço pessoal..........

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A não ser que saibas muito bem o que estás a fazer e quais as implicações do código que estás a criar, o que me parece não ser o caso, os GOTOs são instruções proibidas.

E para criar um menu não é necessário qualquer GOTO, apenas um do... while ou dois, como já indicaram.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Hum ok pessoal . eu nao sabia disso do goto  mas essa tambem foi a resposta do meu profe quando vio o trabalho mas nao sabia que poderia ser a do while ... obrigado pessoal

Abraços....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora