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

Error en C++

Estas en el tema de Error en C++ en el foro de Programación General en Foros del Web. Pues bien estoy haciendo un programa en C++ que al introducir dos numeros diga si los numeros son igual o si son diferentes comparando he ...
  #1 (permalink)  
Antiguo 20/06/2005, 14:40
Avatar de zerohours  
Fecha de Ingreso: agosto-2004
Ubicación: San Salvador, El Salvador.
Mensajes: 60
Antigüedad: 20 años, 3 meses
Puntos: 4
Error en C++

Pues bien estoy haciendo un programa en C++ que al introducir dos numeros diga si los numeros son igual o si son diferentes comparando he aca el codigo

Código:
#include <stdio.h>
#include <conio.h>
int mani()
{
 int a,b;
 clrscr();
 printf("digite el primer numero");
 scanf("%d)",&a);
 printf("digite el segundo numero");
 scanf("%d",&b);
 printf("\n");
  if (a==b)
   printf("Los numeros son iguales");
   else
   printf("Los numeros son diferentes");
   getch();
  return 0;
  }
y me da un error qeu dice expresion sintaxis y no se donde esta el error alguien me podria decir
  #2 (permalink)  
Antiguo 20/06/2005, 14:57
Avatar de spike_jr  
Fecha de Ingreso: febrero-2005
Ubicación: Valencia
Mensajes: 114
Antigüedad: 19 años, 9 meses
Puntos: 2
Primero decirte que lo que has escrito es en C, no C++. Principalmente porque has utilizado para las funciones de flujo de E/S (entrada y salida) el printf y scanf, que en c++ se corresponde con el cout y cin de esta manera:

cout << "digite el primer numero: ";
cin >> a;
cout << "digite el segundo numero: ";
cin >> b;

en c++ no hace falta especificar q tipo de variable utilizas para los flujos E/S, en C lo indicas por ejemplo con %d para enteros.

Otro detalle, que supongo q habras escrito mal sin kerer, es que en vez de int main() has puesto int mani().

A nivel de compilador, si utilizas el de c++ tb t va reconocer la sintaxis de C pero no a la inversa. Pero como me dijiste q quieres aprender C++, adecuate a su sintaxis, porque en algunas cosas es mucho mas sencilla.

saludos
__________________
Cita:
"La programación es una carrera entre ingenieros de software luchando para construir programas cada vez más grandes, mejores y a prueba de idiotas, y el universo intentando producir cada vez más grandes y mejores idiotas. Por ahora, gana el universo." by Rich Cook
  #3 (permalink)  
Antiguo 20/06/2005, 15:06
Avatar de spike_jr  
Fecha de Ingreso: febrero-2005
Ubicación: Valencia
Mensajes: 114
Antigüedad: 19 años, 9 meses
Puntos: 2
No se porque utilizas la funcion clrsrc() ahi, porque esta funcion lo que hace es limpiar la pantalla y al principio se supone que no tienes nada. Bueno y a mi me da error de linkado,
asi que si kieres puedes utilizar tb para hacer eso el system("CLS") pero debes de añadir la cabecera #include<stdlib.h>
__________________
Cita:
"La programación es una carrera entre ingenieros de software luchando para construir programas cada vez más grandes, mejores y a prueba de idiotas, y el universo intentando producir cada vez más grandes y mejores idiotas. Por ahora, gana el universo." by Rich Cook
  #4 (permalink)  
Antiguo 20/06/2005, 15:22
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años, 6 meses
Puntos: 74
clrsrc no es standard, no la uses, el error de enlazado se produce por el mani en vez de main (jaja). Quitando eso funciona bien.

De paso te comento que yo lo escribiria asi:

Código:
  if (a == b) { printf("Los numeros son iguales"); }
  else { printf("Los numeros son diferentes"); }
o si queres depurarlo asi:

Código:
  if (a == b) 
  { 
    printf("Los numeros son iguales"); 
  }
  else 
  { 
    printf("Los numeros son diferentes"); 
  }
Siempre con llaves, la legibilidad es muy superior para mi gusto.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
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 23:14.