Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Error con el codigo if

Estas en el tema de Error con el codigo if en el foro de C/C++ en Foros del Web. bueno ak iesta el codigo no se por que me da error y me da error justo donde comienza el if #include<stdio.h> #include<conio.h> main() { ...
  #1 (permalink)  
Antiguo 01/11/2012, 07:39
Avatar de domix  
Fecha de Ingreso: noviembre-2012
Mensajes: 18
Antigüedad: 11 años, 6 meses
Puntos: 0
Error con el codigo if

bueno ak iesta el codigo no se por que me da error
y me da error justo donde comienza el if


#include<stdio.h>
#include<conio.h>


main()

{

int a;
int b;
char operador;
int resultado;

printf("\nIntrodusca la operacion que desea realizar:");
scanf("%d", &operador);

if(operador == +)
printf("\nIntrodusca a:");
scanf("%d", &a);

printf("\nintrodusca b:");
scanf("%d", &b);

resultado = a + b;
printf("\nEs resultado es:", resultado);

else if(operador == -)
printf("\nIntrodusca a:");
scanf("%d", &a);

printf("\nintrodusca b:");
scanf("%d", &b);

resultado = a - b;
printf("\nEs resultado es:", resultado);

getch();

}

hay esta plis diganme que estoy haciendo mal.

Tambien trate hacerlo con el swich y por igual me dio error plis si puede decirme cuale s el problema en los dos :D me ayudaria aseguir practicando grax.

#include<stdio.h>
#include<conio.h>



main()

{

char operador;
int a;
int b;

int resultado;

printf("\nIntrodusca la operacion que desea realizar:");
scanf("%c", &operador);

switch (operador){

case +
printf("\nIntrodusca a:");
scanf("%d", &a);

printf("\nintrodusca b:");
scanf("%d", &b);

resultado = a + b;
printf("\nEs resultado es:", resultado);

break

case -
printf("\nIntrodusca a:");
scanf("%d", &a);

printf("\nIntrodusca b:");
scanf("%d", &b);

resultado = a - b;
printf("\nEs resultado es:", resultado);



}

getch();

}

Última edición por domix; 01/11/2012 a las 07:55
  #2 (permalink)  
Antiguo 01/11/2012, 09:02
Avatar de cotolon  
Fecha de Ingreso: octubre-2012
Mensajes: 55
Antigüedad: 11 años, 6 meses
Puntos: 10
Respuesta: Error con el codigo if

Así te queda el código y abajo de el te explico algunos errores:

Código C++:
Ver original
  1. #include<stdio.h>
  2. #include<conio.h>
  3.  
  4.  
  5. main()
  6.  
  7. {
  8.  
  9. int a;
  10. int b;
  11. char operador;
  12. int resultado;
  13.  
  14. printf("\nIntrodusca la operacion que desea realizar:");
  15. scanf("%c", &operador);
  16.  
  17.  
  18. printf("\nIntrodusca a:");
  19. scanf("%d", &a);
  20.  
  21. printf("\nintrodusca b:");
  22. scanf("%d", &b);
  23.  
  24. if(operador == '+')
  25. {
  26.     resultado = a + b;
  27.     printf("\nEs resultado es: %d", resultado);
  28. }
  29. else if (operador == '-')
  30. {
  31.     resultado = a - b;
  32.     printf("\nEs resultado es: %d", resultado);
  33. }
  34. else
  35.     printf("\nNo asignaste ningun operador de suma o resta.");
  36.  
  37.  
  38. }

Bueno copié el primer código, y lo arreglé, el tema es el scanf("%c", operador). cuando es %c significa que debe almacenar un caracter.

Lo segundo es que en el if para chequear un caracter es (operador == '+') y tu lo dejaste sin comillas. Lo otro que no es error es que no es necesario pedir 2 veces los valores de a y b puedes pedirlo todo junto, es decir el tipo de operacion y el valor de a y b. también se te olvidó encerrar en {} lo que sigue del if (el {} se usa cuando hay 2 líneas o más que quieres que se ejecuten dentro del if). Y lo último sería que en el printf cuando imprimes el resultado se te olvidó colocar donde esta el "%d" para que en ese lugar imprima la variable resultado. Espero te sirva
  #3 (permalink)  
Antiguo 01/11/2012, 09:37
Avatar de domix  
Fecha de Ingreso: noviembre-2012
Mensajes: 18
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Error con el codigo if

Uff muchas grax borther me has ayudado mucho :) siii tenias unos cuanto error y grax por verlo por mi asi ahora hare los problemas mas sencillo y mas simplificado posible.

muchas grax. :D y saludo ^_^
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




La zona horaria es GMT -6. Ahora son las 11:09.