Curso de Fundamentos de Python

Toma las primeras clases gratis

COMPARTE ESTE ARTÍCULO Y MUESTRA LO QUE APRENDISTE

Descripción
Se desarrolló un juego de adivinanza donde el usuario intenta adivinar un número imaginado por la computadora. El programa proporciona pistas sobre si el número ingresado por el usuario es mayor o menor que el número ganador.

Conceptos aplicados:

  • Manejo de variables.
  • Manejo de distintos tipos de datos (strings, ints, booleanos).
  • Transformación de datos.
  • Operadores lógicos y de comparación.
  • Condicionales.
  • Listas y el método append().
  • Bucles (while).

Pasos a seguir:
Importar el módulo random: Este módulo es esencial ya que nos permite generar el número ganador de forma aleatoria.
Configurar el número ganador: Utilizamos la función random.randint(numero_minimo, numero_maximo) para generar un número aleatorio dentro de un rango especificado, en este caso, entre 0 y 100.

Declarar las variables: Creamos variables para almacenar la información del juego, como los intentos del usuario (lista), la cantidad de intentos (entero) y si el usuario ya ha adivinado o no (booleano).

Solicitar el número al usuario: Utilizamos un bucle while para solicitar al usuario que ingrese un número entre 0 y 100. El número ingresado se convierte a tipo int para facilitar su comparación posteriormente. También se registra el intento del usuario y se agrega el número a la lista de intentos. Es importante destacar que este proceso depende de si el string ingresado por el usuario puede convertirse a un número entero. En caso contrario, un bloque try-except permitirá al usuario ingresar un nuevo valor hasta que lo haga correctamente.

Condicionales: Dentro del bucle while, se utilizan condicionales para comparar el número ingresado por el usuario con el número ganador. Si el número es mayor o menor, se proporciona una pista al usuario. Si el usuario adivina el número ganador, se muestra un mensaje de felicitación, se cambia la variable de validación y el bucle while termina, finalizando el juego.

import random 

def juego_adivinanza():
  def imprimir_datos(intentos_usuario, lista_intentos, intento):
      impreso_intentos=f'¡Van {intentos_usuario} intentos!'
      impreso_lista_intentos=f'Tus intentos fueron: {lista_intentos}'
      return impreso_intentos, impreso_lista_intentos

  numero_ganador=random.randint(0,100)
  intentos_usuario=0
  validacion= False
  lista_intentos=[]
    
  print('BIENVENIDO A MI PRIMER VIDEO JUEGO')
  print('EL JUEGO DE LAS ADIVINANZAS EMPEZARÁ')
  print('')
  print('Tengo aquí anotado un número entre 0 y 100 ¿Podrás adivinar?')
  print('')

  while not validacion:
    try:
      intento_digitado=input('A ver...Un número del 0 al 100: ')
      intento=int(intento_digitado)
      intentos_usuario += 1
      lista_intentos.append(intento)
      impreso_intentos, impreso_lista_intentos = imprimir_datos(intentos_usuario, lista_intentos, intento)
    except ValueError as e:
      print(f'Debes insertar un número entero. "{intento_digitado}" no cumple este requisito.') 
      continue
  
    if intento == numero_ganador:
      print(f'GANASTE, ¡Necesitaste de {intentos_usuario} intentos!')
      print(impreso_lista_intentos)
      validacion=True
    elif intento > numero_ganador:   
      print(f'Uff, te pasaste: el numero es menor {impreso_intentos}')
      print(impreso_lista_intentos)
    elif intento < numero_ganador:
      print(f'Uff, muy bajito: el numero es mayor {impreso_intentos}')
      print(impreso_lista_intentos)
  

Curso de Fundamentos de Python

Toma las primeras clases gratis

COMPARTE ESTE ARTÍCULO Y MUESTRA LO QUE APRENDISTE

0 Comentarios

para escribir tu comentario

Artículos relacionados