con char
tendrías que definir una variable char, para validar si es o no un número, y de ahi lo pasas a número como sigue:
#include <iostream.h>
void main()
{
int iNum;
char cNum;
cout<<"Ingrese el numero:";
cin>>cNum;
//49 = 0 en ASCII y 57 es igual a 9 en ASCII
if(cNum>=49&&cNum<=57)
iNum=atoi(cNum);
//o sino también puedes hacer esto dentro del if()...
//iNum=cNum-49;
}
//sin embargo si vas a validar mas que un dígito, entonces haces una cadena de char's
//y lo comparas de la misma forma pero en una estructura repetitiva (un for, un while o
//un do... while) y si en algún momento no es igual a un número lo sacas y mandas un
//msj de que no era un número.
//Si es que capturas cualquier caracter en una variable que nos ea char, te dará error y
//el programa se colgará
|