Calculadora en c++ [Resuelto/Cerrado]

Denunciar
Message postés
4
Date d'inscription
jueves, 24 de marzo de 2011
Estatus
Miembro
Última intervención
viernes, 25 de marzo de 2011
-
Xtreme Hero
Message postés
31
Date d'inscription
domingo, 27 de marzo de 2011
Estatus
Miembro
Última intervención
jueves, 23 de junio de 2011
-
Hola,nesesito ayuda para esta calculadora en c++ lo q quiero q haga es que al introducir la opcion me despliege la opcion que uno eligio ya tengo el codigo y funciona menos lo de las opcones ocuper el swith y el case aca les dejo el codigo aver si me pueden decir en que estoy mal

#include<stdio.h>
#include<conio.h>
main()
{
int opcion,selector;
printf("opcion 1 suma\nopcion 2 resta\nopcion 3 divicion\nopcion 4 multiplicacion\n");

switch(opcion)
{
case 1:

int numero1,numero2;
printf("ingresa numero1: ");
scanf("%d",&numero1);
printf("ingresa numero2: ");
scanf("%d",&numero2);
printf("el resultado de la suma es:%d",numero1+numero2);
break;
case 2:

int num1,num2;
printf("ingresa numero1: ");
scanf("%d",&num1);
printf("ingresa numero2: ");
scanf("%d",&num2);
printf("el resultado de la suma es:%d",num1-num2);
break;

case 3:

int nume1,nume2;
printf("ingresa numero1: ");
scanf("%d",&nume1);
printf("ingresa numero2: ");
scanf("%d",&nume2);
printf("el resultado de la suma es:%d",nume1/nume2);
break;

case 4:

int no1,no2;
printf("ingresa numero1: ");
scanf("%d",&no1);
printf("ingresa numero2: ");
scanf("%d",&no2);
printf("el resultado de la suma es:%d",no1*no2);
break;
}
getch();
return 0;
}



1 respuesta

Message postés
31
Date d'inscription
domingo, 27 de marzo de 2011
Estatus
Miembro
Última intervención
jueves, 23 de junio de 2011
51
Este codigo no va a funcionar nunca,ya que no le das la posibilidad al usuario de introducir un numero,entonces no pasara a la funcion switch,te redacto el codigo bien:

#include<stdio.h>
#include<conio.h>
main()
{
int opcion,selector;
printf("opcion 1 suma\nopcion 2 resta\nopcion 3 divicion\nopcion 4 multiplicacion\n");

scanf("%d",&opcion);
setbuf ( stdin, NULL );

switch(opcion)
{
case 1:

int numero1,numero2;
printf("ingresa numero1: ");
scanf("%d",&numero1);
setbuf ( stdin, NULL );
printf("ingresa numero2: ");
scanf("%d",&numero2);
setbuf ( stdin, NULL );
printf("el resultado de la suma es:%d",numero1+numero2);
break;
case 2:

int num1,num2;
printf("ingresa numero1: ");
scanf("%d",&num1);
setbuf ( stdin, NULL );
printf("ingresa numero2: ");
scanf("%d",&num2);
setbuf ( stdin, NULL );
printf("el resultado de la suma es:%d",num1-num2);
break;

case 3:

int nume1,nume2;
printf("ingresa numero1: ");
scanf("%d",&nume1);
setbuf ( stdin, NULL );
printf("ingresa numero2: ");
scanf("%d",&nume2);
setbuf ( stdin, NULL );
printf("el resultado de la suma es:%d",nume1/nume2);
break;

case 4:

int no1,no2;
printf("ingresa numero1: ");
scanf("%d",&no1);
setbuf ( stdin, NULL );
printf("ingresa numero2: ");
scanf("%d",&no2);
setbuf ( stdin, NULL );
printf("el resultado de la suma es:%d",no1*no2);
break;
}
getch();
return 0;
}

Acuerdate de limpiar el buffer despues de cada scanf con esto-->setbuf ( stdin, NULL ); Así te evitaras problemas.

Un saludo