2

Juego Matemático en Python

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)

    #sumaifoperacion == 0:
        resultado = a + b
        pregunta = int(input(f'¿Cuánto es {a} + {b}?: '))
        ifpregunta == 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 != 5or resultado != 6or resultado != 7or resultado != 8or resultado != 9:
          a = random.randint(1, 100)
          b = random.randint(1, 10)
          resultado = a / b
          ifresultado == 1orresultado == 2orresultado == 3orresultado == 4orresultado == 5orresultado == 6orresultado == 7orresultado == 8orresultado == 9:
            pregunta = int(input(f'¿Cuánto es {a} / {b}?: '))
            ifpregunta == 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}: ')) 
            ifpregunta == resultado:
              print("¡Sí! ¡Ganaste!")
            else:
              print(f'¡No! ¡Perdiste! Era {resultado}')        
        else:
            resultado = a - b
            pregunta = int(input(f'¿Cuánto es {a} - {b}?: '))
            ifpregunta == 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}?: '))
        ifpregunta == 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}?: '))
      ifpregunta == 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 != 1or resultado != 2or resultado != 3or resultado != 4or resultado != 5or resultado != 6or resultado != 7or resultado != 8or resultado != 9or resultado != 10or resultado != 11or resultado != 12or resultado != 13or resultado != 14:
        a = random.randint(0, 200)
        resultado = math.sqrt(a)
        ifresultado == 1orresultado == 2orresultado == 3orresultado == 4orresultado == 5orresultado == 6orresultado == 7orresultado == 8orresultado == 9orresultado == 10orresultado == 11orresultado == 12orresultado == 13orresultado == 14:

            pregunta = int(input(f'¿Cuál es la raíz cuadrada de {a}?: '))            
						
						ifpregunta == 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.

Escribe tu comentario
+ 2
1

Eso es bastante interesante, pero no creo que este juego pueda atraer a la gente por mucho tiempo. Hoy en día, hay muchas formas de entretenerse en Internet, e incluso es posible encontrar opciones en https://topcasinos.mx/ donde puede consultar casinos con buenos bonos. Es mucho más atractivo, y la oportunidad de ganar es una gran ventaja.