Búsqueda de un número en un intervalo

Pablo Manso García-Mauriño

/*Este programa solicita un intervalo de números naturales.
Genera un número natural al azar entre ellos y solicita un número al usuario.
Si es igual al número generado al azar termina.
Si no, seguirá solicitando números hasta que coincida con el número
generado, indicando previamente si el número dado es mayor o menor
que el que hay que encontrar.
Al final mostrará por pantalla los intentos necesarios para llegar al número */

 

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define SEMILLA time(NULL)

main()
{
int n, m, x, a;
int intentos=1;

do{
printf(“Introduce el primer numero: “);
scanf(“%d”, &n);
}while (n<0);

do{
printf(“Introduce el numero tope: “);
scanf(“%d”, &m);
}while (m<0 || m<=n);

srand(time(NULL));
for(int i=1;i<=100;i++) rand();  // Descartamos los 100 primeros números

printf(“\nSe esta generando un numero natural aleatorio entre [%d, %d]: \n”,n,m);

a=n+rand()%(m-n+1);

do{
printf(“\nAhora escribe un numero del intervalo [%d, %d]: \n”,n,m);
scanf(“%d”, &x);
}while (x<n || m<x);

while(x!=a)
{
if (x < a)
printf(“El numero es mayor.”);
else
printf(“El numero es menor.”);

printf(“\nEscribe otro numero del intervalo [%d, %d]: \n”,n,m);
scanf(“%d”, &x);

intentos=intentos+1;
}

if (intentos==1)
printf(“!!Felicidades!! Ha adivinado el numero en %d intento.”, intentos);
else
printf(“!!Felicidades!! Ha adivinado el numero en %d intentos.”, intentos);

printf (“\n\n”);
return 0;
}

Anuncios
Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s