Error en el codigo c++ [Resuelto]

Iniciado por kzeww, 14 Enero 2016, 03:15 AM

0 Miembros y 1 Visitante están viendo este tema.

kzeww

Código (cpp) [Seleccionar]
#include <iostream>
#include <cmath>

using namespace std;

int main(){

int c;
double a;
double b;
double h;

cout << "¿ Que quieres hacer ?" << endl;
cout << "1) Sacar Hipotenusa" << endl;
cout << "2) Sacar Un Cateto" << endl;
cout << "Precione cualquier letra para salir \n" << endl;

cout << "Elige 1 o 2" << endl;
cin >> c;
cout << "\n" << endl;

switch (c) {
case '1':

cout << "Dame el cateto 1:" << endl;

cin >> a;

cout << "Dame el cateto 2:" << endl;

cin >> b;

double cateto_elevado_uno = pow(a,2.0);
double cateto_elevado_dos = pow(b,2.0);

double suma = (cateto_elevado_uno + cateto_elevado_dos);
double resultado = sqrt(suma);

cout << "La hipotenusa es:" << resultado << endl;
break;
case '2':

cout << "Dame el cateto:" << endl;

cin >> a;

cout << "Dame la Hipotenusa:" << endl;

cin >> h;

double cateto_elevado_uno = pow(a,2.0);
double hipotenusa_elevada = pow(h,2.0);

double suma = (hipotenusa_elevada - cateto_elevado_uno);
double resultado = sqrt(suma)

cout << "El cateto es:" << resultado << endl;

break;
default:
exit(0);
break;
}


system("pause");

return 0,0;
}



El Dev C++ me da error en el case '2': y no se porque diablos lo hace alguien me puede  ayudar estoy recien empezando a programar.  :(

0xFer

Cuando declaras variables dentro de algún case, esas variables son visibles en los siguientes case del switch, debes usar { } para que no haya conflictos;

Código (csharp) [Seleccionar]
switch(c)
{
    case 1: {
       //Lo que sea
    }break;
    case 2: {
       //Lo que sea
    }break;

}   


Fíjate también que no se usa comillas simples para los números, ya que, en ese caso serían caracteres y en tu código la variable c es una variable de tipo entera. '1' no es lo mismo que 1.

Te falta un ; aqui:
Código (cpp) [Seleccionar]
double resultado = sqrt(suma)
Código (java) [Seleccionar]
int getRandomNumber(){
    return 4; //chosen by fair dice roll
              //guaranteed to be random
}

kzeww