Curso Básico de Python

Toma las primeras clases gratis

En el curso aprendimos sobre conceptos fundamentales en Python, y creamos proyectos como los de Adivinar el Número. Y decidí crear un pequeño proyecto a partir de lo aprendido, el cuál abarca condicionales, ciclos, operadores lógicos, módulos y funciones, básicamente una gran parte de los aprendido en el curso.

El juego consiste en qué genera alguna de las 4 operaciones aritméticas básicas, procesa la operación y guarda el resultado de dicha operación. Luego el jugador debe acertar la respuesta de la operación que generó el programa. El programa le informará si la respuesta del usuario es correcta o no. El juego funciona bien y tengo pensado agregarle potencias y raíces cuadradas, junto a una interfaz gráfica, pero por ahora te dejo el funcionamiento del juego. Para probarlo, tienes 2 opciones:
1) Probarlo desde Google Colab (es muy sencillo).
2) O copiar el código de mi programa y ejecutarlo por ti mismo.

Yo recomiendo la primera, y es que lo tienes servido, solo debes hacer click en el botón qué es similar al de Play en YouTube. Aún, si no sabes qué es Google Colab te dejaré un video, así que aquí te dejo los enlaces necesarios:

<ins>Enlace al Google Colab del juego: https://colab.research.google.com/drive/1YTdQ0pBH9qovT3WjcIQbg-AvsupeVpoM?usp=sharing</ins>
Enlace al video introductorio a Colab: https://youtu.be/8VFYs3Ot_aA


Código del juego (irá variando con el transcurso del tiempo):

import random

def jugarConMates():
    print("¡Bienvenido al juego matemático! Te voy a dar una operación y me respondes con el resultado. Si es correcta, ¡Ganaste! Sino, ¡Perdiste!")
    a = random.randint(1, 100)
    b = random.randint(1, 100)
    operacion = random.randint(0, 3)

    #suma
    if operacion == 0:
        resultado = a + b
        pregunta = int(input(f'¿Cuánto es {a} + {b}?: '))
        if pregunta == resultado:
          print("¡Sí! ¡Ganaste!")
        else:
          print(f'¡No! ¡Perdiste! Era {resultado}')   

    #división
    elif operacion == 1:
        a = random.randint(1, 100)
        b = random.randint(1, 10)

        resultado = a / b

        while resultado != 1or resultado != 2or resultado != 3or resultado != 4or resultado != 5 or resultado != 6 or resultado != 7 or resultado != 8 or resultado != 9:
          a = random.randint(1, 100)
          b = random.randint(1, 10)
          resultado = a / b
          if resultado == 1 or resultado == 2 or resultado == 3 or resultado == 4 or resultado == 5 or resultado == 6 or resultado == 7 or resultado == 8 or resultado == 9:
            pregunta = int(input(f'¿Cuánto es {a} / {b}?: '))
            if pregunta == resultado:
                print("¡Sí! ¡Ganaste!")
                break
            else:
                print(f'¡No! ¡Perdiste! Era {resultado}')
                break

    #resta
    elif operacion == 2:
        if a < b:
            a = random.randint(b, 100)
            resultado = a - b
            pregunta = int(input(f'¿Cuánto es {a} - {b}: ')) 
            if pregunta == resultado:
              print("¡Sí! ¡Ganaste!")
            else:
              print(f'¡No! ¡Perdiste! Era {resultado}')        
        else:
            resultado = a - b
            pregunta = int(input(f'¿Cuánto es {a} - {b}?: '))
            if pregunta == resultado:
              print("¡Sí! ¡Ganaste!")
            else:
              print(f'¡No! ¡Perdiste! Era {resultado}')     

    #multiplicación
    elif operacion == 3:
        a = random.randint(0, 10)
        b = random.randint(0, 10)
        resultado = a * b
        pregunta = int(input(f'¿Cuánto es {a} * {b}?: '))
        if pregunta == resultado:
          print("¡Sí! ¡Ganaste!")
        else:
          print(f'¡No! ¡Perdiste! Era {resultado}') 

    #potencia
    elif operacion == 4:
      a = random.randint(0, 20)
      b = random.randint(0, 3)
      resultado = a ** b
      pregunta = int(input(f'¿Cuánto es {a} ** {b}?: '))
      if pregunta == resultado:
          print("¡Sí! ¡Ganaste!")
      else:
          print(f'¡No! ¡Perdiste! Era {resultado}')

    #raíz cuadrada
    elif operacion == 5:
      a = random.randint(0, 200)
      resultado = math.sqrt(a)

      #verificar la raíz cuadrada es exacta
      while resultado != 1 or resultado != 2 or resultado != 3 or resultado != 4 or resultado != 5 or resultado != 6 or resultado != 7 or resultado != 8 or resultado != 9 or resultado != 10 or resultado != 11 or resultado != 12 or resultado != 13 or resultado != 14:
        a = random.randint(0, 200)
        resultado = math.sqrt(a)
        if resultado == 1 or resultado == 2 or resultado == 3 or resultado == 4 or resultado == 5 or resultado == 6 or resultado == 7 or resultado == 8 or resultado == 9 or resultado == 10 or resultado == 11 or resultado == 12 or resultado == 13 or resultado == 14:

            pregunta = int(input(f'¿Cuál es la raíz cuadrada de {a}?: '))            
						
						if pregunta == resultado:
                print("¡Sí! ¡Ganaste!")
                break
            else:
                print(f'¡No! ¡Perdiste! Era {resultado}')
                break

jugarConMates() #ejecutamos el juego

ACTUALIZACIÓN: Ya se han agregado las potencias y raíces cuadras. Algo a destacar es que las raíces cuadradas que genera el programa son exactas, por lo tanto al jugador nunca le tocará acertar una raíz cuadrada cuyo resultado no sea exacto.

Curso Básico de Python

Toma las primeras clases gratis

0 Comentarios

para escribir tu comentario

Artículos relacionados