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

Problema con variable en C

Estas en el tema de Problema con variable en C en el foro de C/C++ en Foros del Web. int NumeroFases; printf("__________________________________________ _____________________________"); printf("%s","\n\n Ingrese el numero de fases del campeonato(solo numeros): "); scanf ("%d",&NumeroFases); necesito validar esa variable, de manera que solo me ...
  #1 (permalink)  
Antiguo 19/07/2012, 18:29
 
Fecha de Ingreso: julio-2012
Mensajes: 7
Antigüedad: 11 años, 9 meses
Puntos: 0
Problema con variable en C

int NumeroFases;
printf("__________________________________________ _____________________________");
printf("%s","\n\n Ingrese el numero de fases del campeonato(solo numeros): ");
scanf ("%d",&NumeroFases);



necesito validar esa variable, de manera que solo me ingresen numeros, si ingresan letras o otros caracteres que me saque error! en C

Soy principiante :D
  #2 (permalink)  
Antiguo 19/07/2012, 19:24
 
Fecha de Ingreso: diciembre-2010
Mensajes: 77
Antigüedad: 13 años, 4 meses
Puntos: 11
Respuesta: Problema con variable en C

Buenas, lo puedes hacer de esta forma :

Código C++:
Ver original
  1. int NumeroFases;
  2. printf("__________________________________________ _____________________________");
  3. printf("%s","\n\n Ingrese el numero de fases del campeonato(solo numeros): ");
  4. if(!scanf ("%d",&NumeroFases)) {
  5.          printf("el valor ingresado no es un numero!\n");
  6. }
__________________
Convert JSON to CSV
  #3 (permalink)  
Antiguo 20/07/2012, 07:39
 
Fecha de Ingreso: julio-2012
Mensajes: 7
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con variable en C

Muchas Gracias, me sirvio de mucho! :)
  #4 (permalink)  
Antiguo 20/07/2012, 09:04
Avatar de cronopiomx  
Fecha de Ingreso: mayo-2012
Ubicación: Programing Cloud
Mensajes: 282
Antigüedad: 12 años
Puntos: 28
Respuesta: Problema con variable en C

puedes hacerlo asi tambien mas generalizado...

[CODE]
if ( isdigit(NumeroFases))
cout<<"no es numero";
[CODE]
  #5 (permalink)  
Antiguo 20/07/2012, 14:46
 
Fecha de Ingreso: julio-2012
Mensajes: 7
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con variable en C

lo tengo de la siguiente manera:
int NumeroFases;
printf("__________________________________________ _____________________________");
printf("%s","\n\n Ingrese el numero de fases del campeonato(solo numeros): ");
scanf ("%d",&NumeroFases);
if(!scanf ("%d",&NumeroFases)) {
system("cls");
printf("\n Error solo puede ingresar numeros.!\n");
getche();
}

y me sale bien....pero si yo efectivamente ingreso un numero...el programa no me hace nada cuando deberia ejecutar las demas sentencias! :D

gracias! :)
  #6 (permalink)  
Antiguo 20/07/2012, 15:41
 
Fecha de Ingreso: diciembre-2011
Ubicación: CABA
Mensajes: 433
Antigüedad: 12 años, 4 meses
Puntos: 94
Respuesta: Problema con variable en C

Hola! ¿por que dos scanf?

La funcion scanf retorna el cantidad de datos ingresados correctamente, de lo contrario regresa 0. En este caso si el usuario ingresa algo q no sea un numero(entero), scanf entra en el if e imprime el error

Código C:
Ver original
  1. int NumeroFases;
  2. printf("__________________________________________ _____________________________");
  3. printf("%s","\n\n Ingrese el numero de fases del campeonato(solo numeros): ");
  4. if(!scanf ("%d",&NumeroFases)) {
  5. system("cls");
  6. printf("\n Error solo puede ingresar numeros.!\n");
  7. getche();
  8. }


Saludos

PD: usa las Highlight para poner codigo
  #7 (permalink)  
Antiguo 22/07/2012, 07:58
 
Fecha de Ingreso: julio-2012
Mensajes: 7
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con variable en C

Muchas Gracias :)

Etiquetas: variables
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 09:01.