Programación General > C/C++

 Re: Leer un numero ( scanf )

<< < (2/4) > >>

franc:
EDITADO: Super_G ya lo he probado y no funciona:( da bucle infinito:(


Super_G buena idea;) probare a ver si puedo hacer algo con eso... de todas formas ya te digo k no es necesario scanf puede ser otra funcion de leer numeros SOLO numeros:)

gracias y poner mas cosas si se os ocurre algo!;)

EDITADO: Super_G ya lo he probado y no funciona:( da bucle infinito:(


#include <stdio.h>
#include <conio.h>

void main()
{
int num,num1;

do{
printf(" Insert the number: ");
scanf("%d",&num);
num1=num;
}while (num1==1440);
printf("The number is: %d",num1);
}

franc:
#include <stdio.h>
#include <conio.h>



void main()
{


int num=0;

printf(" Inserta el numero: ");
int res = scanf("%d",&num);
   if (res==1)
   {
      printf("El numero es: %d",num);
   }
if (res!=1)
{
printf(" Inserta solo numeros!!! ( not letras!!! ): ");
scanf("%d",&num);
}

printf("nres: %d",res);
}

carmamezo:
Aqui te expongo una solución:

void main()
{
int num;
char num2;

do{
printf("nIntroduce numero: ");
scanf("%d",&num);
scanf("%c",&num2);
}while(num2>='a' && num2 <='z');
printf("%d",num+10);
}

Como verás al declarar un char eres capaz de saber si se ha introducido una letra o palabra o no, por tanto solucionarías el problema.  Un saludo.
:adios:

franc:
carmamezo pero eso funcionaria si fuese 2 digitos, ke me dices si el usuario pone "4f" o "87e7dfs98sdff"

sabes lo k kiero decir ? sigue sin ir !!!!

nadie ve la solucion:(:(

gracias de todos modos;)

carmamezo:
Creo que te equivocas o yo no te entiendo, pues a mi me va perfecto... en el momento que se introduce una letra el programa pide que se repita la inserción, se puede mejorar el código haciendo un fflush(stdin) después del scanf último.  Pero si se introduce un 3425asdf pide un nuevo valor, por tanto no deja pasar ninguna letra esté en la posición que esté.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa