Buenas, me gustaría saber cómo se puede introducir un control de datos que compruebe al introducir un numero por teclado que no es negativo y que no es un caracter. Muchas gracias
Registrado: 01 Oct 2004 Mensajes: 3770 Ubicación: Mexico
Publicado: 17/11/2007 6:24 am
Título:
La forma exacta depende del lenguaje de programacion que estes utilizando.
En el caso de C la forma mas sencilla (pero no totalmente fiable) es leyendo el numero con scanf/fscanf y verificando su valor de retorno, a continuacion y si se leyo un numero bastaria con verificar que este sea no negativo.
Seria mas o menos asi:
Código:
int numero;
/* ... */
if (scanf("%d", &numero) != 1){
/* manejo de error: no es numero (o error o EOF) */
}else if (numero < 0){
/* manejo de error: numero negativo */
}
/* Continuacion normal del programa */
En C hay otras formas mejores (mas solidas) pero mas elaboradas utilizando funciones como fgets + strtol.
Un saludo _________________ The capacity to learn is a gift; The ability to learn is a skill; The willingness to learn is a choice. -- Rebec of Ginaz