Ir ao conteúdo
  • Cadastre-se

Erro na Linha


Lukas Pablo

Posts recomendados

Olá, estou tentando fazer um programinha básico para calcular areas de quadrados, triangulos, circulos.... 

 

Estou no primeiro ano de faculade ( primeiro mes afinal )

 

e dei umas pesquisadas sobre switchcase, e tentei usa-lo em meu programa, porém está dando o seguinte erro:

 

 

 

[Error] case label '2' not within a switch statement

 

Vale lembrar que.. quando eu retiro o Case 2: do meu programa, ele funciona perfeitamente.. ( Obviamente só com o Case 1: )

 

vou deixar abaixo o meu programa até agora, por favor, citem os erros;

#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";cin>>a1;switch (a1)case 1: { float A=0.0,B=0.0,C=0.0;cout<< "Digite o Valor do Raio: " ;cin>>A;B=3.14;C=2*B*A;cout<<"O Comprimento do seu circulo: " << C; break; }         case 2:          {  float A=0.0,B=0.0,C=0.0;cout<< "Digite o Valor do Raio: " ;cin>>A;B=3.14;C=2*B*A;cout<<"O Comprimento do seu circulo: " << C; break; }     getch();return(0);}
Link para o comentário
Compartilhar em outros sites

Simples.. você n abriu o switch(a1)...

o codigo fica assim:

#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";cin>>a1; switch (a1){case 1:  { float A=0.0,B=0.0,C=0.0; cout<< "Digite o Valor do Raio: " ;cin>>A; B=3.14;C=2*B*A; cout<<"O Comprimento do seu circulo: " << C; break; }         case 2:           {  float A=0.0,B=0.0,C=0.0; cout<< "Digite o Valor do Raio: " ;cin>>A; B=3.14;C=2*B*A; cout<<"O Comprimento do seu circulo: " << C; break; }      getch();return(0);}  }

Compilei deste jeito e nao deu nenhum erro. espero ter ajudado '-'

Link para o comentário
Compartilhar em outros sites

Substitua

cout<<"Que operação deseja realizar?\n""1.Calculo do Comprimento de Circulo\n""2.Calculo da Area do Circulo\n";

por

cout<<"Que operação deseja realizar?\n" <<"1.Calculo do Comprimento de Circulo\n" <<"2.Calculo da Area do Circulo\n";

pois a o operador << é usado para concatenar strings na classe cout, e sem ele não iria compilar.

 

Dicas:

Na declaração:

switch (a1){case 1:  { float A=0.0,B=0.0,C=0.0; cout<< "Digite o Valor do Raio: " ;cin>>A; B=3.14;C=2*B*A; cout<<"O Comprimento do seu circulo: " << C; break; }         case 2:           {  float A=0.0,B=0.0,C=0.0; cout<< "Digite o Valor do Raio: " ;cin>>A; B=3.14;C=2*B*A; cout<<"O Comprimento do seu circulo: " << C; break; }

tente não repetir os mesmos códigos em cada "case" facilitando a manutenção do programa. Tente assim:

float raio = 0.0F;float result = 0.0F; cout << "Digite o valor do raio: " ;cin >> raio; switch (a1){    case 1:        result = 2.0F * 3.14F * raio;        cout << "O comprimento do seu circulo: " << result << "\n";       break;     case 2:        result = 3.14F * raio * raio;        cout << "A area do seu circulo: " << result << "\n";       break;} 
Link para o comentário
Compartilhar em outros sites

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...