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.
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.