Ir ao conteúdo

Duvidas e erro.


Lukas Pablo

Posts recomendados

Postado

Olá pessoal, criei um programa para calcular área,comprimento de quadrados, triângulos etc... , fiz um post anterior com uma duvida sobre um erro, com a ajuda de vocês consegui solucionar, obrigado.. porém agora estou com um outro problema, a minha primeira equação " Comprimento do Circulo " , após compilar, qualquer valor que eu coloco o resultado é = 0... queria saber porque esta acontecendo este problema, deixarem abaixo o código!

 

Uma Outra duvida... eu estou usando o comando switchcase, após compilar o programa, eu digito um numero correspondente, ai pede os valores da equação e logo após aparece a resposta, então, eu pressiono alguma tecla e o programa fecha... queria saber se tem alguma maneira de após eu resolver alguma equação, eu conseguir voltar ao menu principal

#include<stdio.h>#include<iostream>#include<conio.h>#include<math.h>#include<string>using namespace std;int main(){int a1=0;cout<<"Que operação deseja realizar?\n""1.Calculo do Comprimento de Circulo\n""2.Calculo da Area do Circulo\n""3.Calculo do Volume da Esfera\n""4.Calculo da Area da Esfera\n""5.Calculo da Area do quadrilatero\n""6.Calculo do Comprimento do quadrilatero\n""7.Calculo da Area do Triangulo\n""8.Calculo da Area do Trapezio\n";cin>>a1;switch (a1){case 1:          {     float raio=0.0;   float result=0.0;cout<< "Digite o Valor do Raio: " ;cin>>raio;raio=2*3.14*raio;cout<<"O Comprimento do seu circulo: " << result; break; }         case 2:   {     float raio=0.0;float result=0.0;cout<< "Informe o Valor do Raio: ";cin>>raio;result= 3.14*pow(raio,2);cout<<"A Area do circulo: "<< raio;break;    }         case 3:        {       float raio=0.0;float result=0.0;cout<< "Informe o Raio: ";cin>>raio;result=4*3.14*pow(raio,3)/3;cout<< "O Volume da Esfera: " << result ;break;    }            case 4:           {       float raio=0.0;float result=0.0;cout<< "Informe o Raio: ";cin>>raio;result=4*3.14*pow(raio,2);cout<< "A Area da Esfera: " << result ;break;    }            case 5:           {       float ladoA=0.0;float ladoB=0.0;float result=0.0;cout<< "Informe a Medida de um dos lados do quadrilatero: ";cin>>ladoA;ladoB=ladoA;result=ladoA*ladoB;cout<< "A Area do quadrilatero: "<< result;break;    }            case 6:           {       float ladoA=0.0;float ladoB=0.0;float result=0.0;cout<< "Informe a Medida de um dos lados do quadrilatero: ";cin>>ladoA;ladoB=ladoA;result=2*ladoA+2*ladoB;cout<< "O Comprimento do quadrilatero: "<< result;break;       }            case 7:           {       float base=0.0;float altura=0.0;float result=0.0;    cout<<"Infome a Base a do Triangulo: ";    cin>>base;    cout<<"Informe a Altura do Triangulo: ";    cin>>altura;        result=(base*altura)/2;        cout<<"A Area do Triangulo: " << result;     break;    }            case 8:           {       float basemaior=0.0;float basemenor=0.0;float altura=0.0;float result=0.0;    cout<<"Informe a Base Maior do Trapezio: ";    cin>>basemaior;    cout<<"Informe a Base Menor do Trapezio: ";    cin>>basemenor;    cout<<"Informe a Altura do Trapezio: ";    cin>>altura;        result=(basemaior+basemenor)*altura/2;        cout<<"A Area do Trapezio: " << result;    break;        }    getch();return(0);}}
Postado

Coloca um 

voltar:

em cima das opções e no final da opção selecionada coloca um

goto voltar;

 

tipo assim:

voltar:cout<<"Que operação deseja realizar?\n""1.Calculo do Comprimento de Circulo\n""2.Calculo da Area do Circulo\n""3.Calculo do Volume da Esfera\n""4.Calculo da Area da Esfera\n""5.Calculo da Area do quadrilatero\n""6.Calculo do Comprimento do quadrilatero\n""7.Calculo da Area do Triangulo\n""8.Calculo da Area do Trapezio\n";cin>>a1;

e no final de cada caso de seu código:

case 8:           {       float basemaior=0.0;    float basemenor=0.0;    float altura=0.0;    float result=0.0;    cout<<"Informe a Base Maior do Trapezio: ";    cin>>basemaior;    cout<<"Informe a Base Menor do Trapezio: ";    cin>>basemenor;    cout<<"Informe a Altura do Trapezio: ";    cin>>altura;        result=(basemaior+basemenor)*altura/2;        cout<<"A Area do Trapezio: " << result;    break;        }

coloca isso:

                      cout<<endl<<"Deseja fazer outro calculo? (S/N)" <<endl;  cin>> decisao1;    system("cls");    if ((decisao1=='s')||(decisao1=='S'))    {          goto voltar;    }    else    {          exit(1);    }

system("cls"); é para limpar a tela, o goto voltar; volta para onde tiver o voltar: e o exit(1); sai do programa,

você vai precisar da biblioteca <stdlib.h> para usar esses comandos...

dessa forma você escolhe em voltar para o menu ou sair do programa.

 

OBS: não esquece de deixar identado( dentear) seu código para melhor visualização.

 

E sobre a questão do erro no primeiro é porque você ta mostrando a varável errada, você deve mostrar o raio não o result.

Pois o calculo está sendo feito no raio e o result está apenas com 0.

 

OBS: Percebi que você está com bibliotecas em seu código sem necessidade... você pode aprender mais sobre elas:

 

aqui: http://pt.wikipedia.org/wiki/Biblioteca_padr%C3%A3o_do_C%2B%2B

e aqui: http://www.cplusplus.com/reference/

 

espero ter ajudado, t++

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!