Dev - C++ - Problema con código para turbo c++

 
Vista:

Problema con código para turbo c++

Publicado por David (2 intervenciones) el 01/05/2010 23:49:41
Vale, quiero hacer un pequeña calculadora utilizando switch, terminé de escribir el código pero me marca errores en cada caso.

Aquí está el código :
#include <stdio.h>
#include <conio.h>
void main()
{
int A,B,opcion,result;


gotoxy(20,1); printf("Calculadora");
gotoxy(20,2); printf(" =========");

gotoxy(5,7); printf("================");
gotoxy(5,8); printf("Menú de Opciones");
gotoxy(5,10); printf("1.- Suma\n");
gotoxy(5,11); printf("2.- Resta\n");
gotoxy(5,12); printf("3.- Multiplicación\n");
gotoxy(5,13); printf("4.- Division\n");
gotoxy(5,15); printf("\n\n Elije una opcion"); scanf("%d", opcion);
switch(opcion);
{
case 1:
gotoxy(20,1); printf("SUMANDO");
gotoxy(20,2); printf("=======");
gotoxy(5,7); printf("Ingrese el primer valor"); scanf("%d", &A);
gotoxy(5,8); printf("Ingrese el segundo valor"); scanf("%d", &B);
result=A+B;
gotoxy(6,10); printf("El resultado de la SUMA es %d", result);
break;

case 2:
gotoxy(20,1); printf("RESTANDO");
gotoxy(20,2); printf("========");
gotoxy(5,7); printf("Ingrese el primer valor"); scanf("%d", &A);
gotoxy(5,8); printf("Ingrese el segundo valor"); scanf("%d", &B);
result=A-B;
gotoxy(6,10); printf("El resultado de la RESTA es %d", result);
break;

case 3:
gotoxy(20,1); printf("MULTIPLICANDO");
gotoxy(20,2); printf("=============");
gotoxy(5,7); printf("Ingrese el primer valor"); scanf("%d", &A);
gotoxy(5,8); printf("Ingrese el segundo valor"); scanf("%d", &B);
result=A*B;
gotoxy(6,10); printf("El resultado de la MULTIPLICACION es %d", result);
break;

case 4:
gotoxy(20,1); printf("DIVIDIENDO");
gotoxy(20,2); printf("==========");
gotoxy(5,7); printf("Ingrese el primer valor"); scanf("%d", &A);
gotoxy(5,8); printf("Ingrese el segundo valor"); scanf("%d", &B);
result=A/B;
gotoxy(6,10); printf("El resultado de la DIVISION es %d", result);
break;
}
getch();
}

Los errores que me marca son:
En las lineas donde dicen case 1, case 2, case 3 y case 4:
Case outside of switch
Expression syntax
En las lineas donde está el identificador break;
Misplaced break

En el getch();
Warning : Unreachable code

¿Qué estoy haciendo mal?
¿Falta algún ;?

Ayuda por favor, soy realmente nuevo en esto del Turbo C++
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con código para turbo c++

Publicado por Capitan Kirk (48 intervenciones) el 03/05/2010 14:58:51
Sobra el punto y coma detrás de switch. Al ponerlo, el switch te queda como una sentencia vacía, los case quedan fuera y eso es lo que te está indicando. El resto de errores son (a primera vista) consecuencia del primero, se deberían corregir al eliminar el punto y coma. No te asustes si te sale una lista larga de errores, casi siempre ocurre que hay unos cuantos que son consecuencia del primero y desaparecerán al corregirlo.

Cuando pides la opcion, debes poner:

scanf("%d", &opcion);

dado que el valor de opcion debe ser modificado. Sin embargo, sí lo has hecho correctamente al pedir los valores de A y B en los case. Ten cuidado, porque en errores como este no siempre te avisa el compilador.

En el caso de la división, dado que A y B los has declarado como enteros, te dará el cociente de la división entera y perderás el resto. Si quieres el cálculo con decimales, tendrás que declarar A y B como float ó double, y cambiar en consecuencia los especificadores de formato de printf(() y scanf().

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con código para turbo c++

Publicado por david (2 intervenciones) el 04/05/2010 00:05:42
Vale, ya lo he solucionado. Gracias! y si, hice la calculadora de forma que puedan agregarse decimales usando float. Gracias de nuevo y hasta pronto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con código para turbo c++

Publicado por Jean Paul Schnneider (1 intervención) el 20/05/2014 06:30:58
Hola, ¿como es el código corregido?, tengo varios errores y tambien llevo poco programando C++,
Gracias por el aporte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar