
using System;
using LeerDato;
namespace AdivinarNum
{
  class Program
  {
    public static void Main(string[] args)
    {
      int numero = 0; // número pensado por el usuario
      int adivinar = 0; // número pensado por el ordenador
      int i = 0; // intentos realizados
      int oportunidades = 7; // número de intentos permitido
      Random rnd = new Random();
      char resp = 'n'; // ¿seguir jugando (s/n)?

      Console.WriteLine("Adivina mi número entre 0 y 100.");
      Console.WriteLine("Tienes " + oportunidades +
                        " oportunidades. SUERTE.");
      do
      {
        adivinar = rnd.Next(101);
        i = 0;
        do
        {
          Console.Write("Número: ");
          Leer.DatoInt(ref numero);
          if (numero < adivinar)
          {
            Console.WriteLine("Más grande");
          }
          else if (numero > adivinar)
          {
            Console.WriteLine("Más pequeño");
          }
          else if (numero == adivinar)
          {
            Console.WriteLine("Muy bien!!!!. Has acertado");
          }
          i++;
        }
        while ((numero != adivinar) && (i < oportunidades));

        if (numero != adivinar)
        {
          Console.WriteLine("No acertaste. El número" +
                            " era el " + adivinar);
        }
        Console.Write("¿Quieres seguir jugando? (s/n): ");
        resp = (char)Console.Read();
        Console.ReadLine(); // limpiar \n
      }
      while (resp == 's');
      
      Console.Write("Pulse una tecla para continuar...");
      Console.ReadKey(true);
    }
  }
}
