numero pares y impares??

noelia
16 de Diciembre del 2009
Hola! necesito ayuda con este programa, estoy empezando a programar y no se donde esta el fayo, gracias de antemano

// Programa que va leyendo números enteros hasta que
// se introduzca el cero. Imprimir el número de pares e impares introducidos

#include <iostream>
using namespace std;

int main() {
int numero, contpar, contimpar;

contpar=0;
contimpar=0;
cout<<"Introduce un numero entero: ";
cin>>numero;

while (numero!=0){
if (numero / 2 == 0)
contpar = contpar + 1;
else
contimpar = contimpar + 1;
}
cout<<"Fueron "<<contpar<<" pares y "<<contimpar<< " impares"<<endl;


system ("PAUSE");
return 0;
}

javier_h
16 de Diciembre del 2009
Hola noelia.
Para empezar, cualquier número dividido entre 2 nunca será 0 por lo que no tendras nunca un número par. Para que sea par lo has de dividir entre 2 y el resto ha de ser 0. Para ello has de usar if(numero%2==0).
El segundo error es que sólo lees un "numero" y pones un bucle dependiendo de "numero" por lo que generas un bucle infinito. Para solucionarlo, antes de cerrar el while vuelve a escribir cout<<"Introduce un numero entero: ";
cin>>numero;