Foros del Web » Programación para mayores de 30 ;) » Programación General »

Calculadora en C. (Principiante)

Estas en el tema de Calculadora en C. (Principiante) en el foro de Programación General en Foros del Web. Hola, que esta mal en este codigo, esta echo en C, al compilar no me da error ni al ejecutar, me da error (el error ...
  #1 (permalink)  
Antiguo 17/11/2003, 15:18
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Calculadora en C. (Principiante)

Hola, que esta mal en este codigo, esta echo en C, al compilar no me da error ni al ejecutar, me da error (el error es que la aplicación se cierra sin decirme nada) al intentar sumar, restar, multiplicar o dividir. Estoy empezando, con C, así que puede haber errores gravísimos.

Código:
#include <stdio.h> 
#include <conio.h> 

main()
{
int op1;
int op2;
int caso;
int total;
printf("\t\t\t\tElige una opción:\n\n");
printf("\t\t\t\t1.- Sumar\n");
printf("\t\t\t\t2.- Restar\n");
printf("\t\t\t\t3.- Multiplicar\n");
printf("\t\t\t\t4.- Dividir\n");
caso = getch();
switch (caso)
{
case '1':
printf("Has elegido Sumar\n\nSuma:\n");
scanf("%d", &op1);
printf("+");
scanf("%d", &op2);
total = op1 + op2;
printf("Resultado: %d");
break; 
case  '2':
printf("Has elegido Restar\n\nResta:\n");
scanf("%d", &op1);
printf("-");
scanf("%d", &op2);
total = op1 - op2;
printf("Resultado: %d");
break; 
case '3':
printf("Has elegido Multiplicar\n\nMultiplica:\n");
scanf("%d", &op1);
printf("*");
scanf("%d", &op2);
total = op1 * op2;
printf("Resultado: %d");
break; 
case '4':
printf("Has elegido Dividir\n\nDivide:\n");
scanf("%d", &op1);
printf("/");
scanf("%d", &op2);
total = op1 / op2;
printf("Resultado: %d");
break; 
default: printf("Elige una operación correcta (1, 2, 3  o 4)"); break;
}
}
Un saludo

Por cierto, es una especie de calculadora.
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #2 (permalink)  
Antiguo 18/11/2003, 17:44
Avatar de jorel  
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, N.L.
Mensajes: 253
Antigüedad: 21 años
Puntos: 0
hace tiempo que no programo en c

pero creo que es esto:

printf("Resultado: %d, &total");
__________________

:adios:

Jorge Santana

Última edición por jorel; 18/11/2003 a las 17:45
  #3 (permalink)  
Antiguo 18/11/2003, 21:32
 
Fecha de Ingreso: agosto-2002
Mensajes: 202
Antigüedad: 21 años, 8 meses
Puntos: 1
Claro falta que es lo que printf imprime. Es como te dijeron, pero sin el & ya que imprimiria la direccion del resultado. El & va en el scanf.
__________________
Principio Legal Legalidad en la web y Directorio de Software Open Source
Pais Once El lugar donde descubrir una ciudad
  #4 (permalink)  
Antiguo 18/11/2003, 21:35
 
Fecha de Ingreso: agosto-2002
Mensajes: 202
Antigüedad: 21 años, 8 meses
Puntos: 1
Ahh me olvidaba, tambien cerrar las comillas antes de la ",". Y tambien faltaria un getch(); al final de todo para que no se cierre sin ver el resultado.
__________________
Principio Legal Legalidad en la web y Directorio de Software Open Source
Pais Once El lugar donde descubrir una ciudad
  #5 (permalink)  
Antiguo 19/11/2003, 15:28
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Muchas gracias, me funciona muy bien.

PD: Es mi primer programita en C

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #6 (permalink)  
Antiguo 20/01/2004, 22:56
 
Fecha de Ingreso: enero-2004
Ubicación: Ciudad de Guatemala
Mensajes: 1
Antigüedad: 20 años, 3 meses
Puntos: 0
Exclamación Necesito saber como!!!!!!!!

Yo estoy haciendo una calculadora en C pero no se como puedo hacer para elevar un numero a otro...¿alguien lo sabe???
  #7 (permalink)  
Antiguo 21/01/2004, 14:46
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 21 años
Puntos: 0
Hola en visual basic si mal no recuerdo era así: 10^5

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #8 (permalink)  
Antiguo 21/01/2004, 15:34
Avatar de jorel  
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, N.L.
Mensajes: 253
Antigüedad: 21 años
Puntos: 0
si creo que en c si puede utilizar ^ para elevar un numero a su exponente... tambien existe la libreria de math.h que tiene la funcion pow

pow(base,expon)

Saludos
__________________

:adios:

Jorge Santana
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 21:03.