numeros_tombola = []
for x in range(1,8):
while True:
numero_aleatorio = randint(1,20)
if numero_aleatorio not in numeros_tombola:
numeros_tombola.append(numero_aleatorio)
break
Check de restricciones
def check(b):
estado_check = False
if b > 20 or b < 0:
print("El numero tiene que estar entre 0 y 20")
elif b in numeros_elegidos:
print("Eliga un numero no repetido")
else:
estado_check = True
return estado_check
Input de numeros elegidos
n = 1
numeros_elegidos = []
for y in range(0,7):
while True:
if n == 7:
numero = int(input("Comodin: "))
else:
numero = int(input(f"Numero {n}: "))
if check(numero) is True:
numeros_elegidos.append(numero)
n += 1
break
if len(numeros_restantes) == 1 and comodin_correcto == False:
print(f"""Felicidades!!!, Acertaste en todas excepto en el comodin, tiene permitido cambiarlo.
(Pista: el numero es {mayor_menor} a {comodin}""")
while True:
comodin = int(input("Comodin: "))
if check(comodin) == True:
if comodin == numeros_restantes[0]:
numeros_restantes.remove(comodin)
numeros_correctos.append(comodin)
break
else:
break
elif len(numeros_restantes) > 1 and comodin_correcto == False:
numeros_incorrectos.remove(comodin)
numeros_incorrectos.sort()
print(f"""Se equivoco en los numeros {numeros_incorrectos} y en el comodin {comodin}, tiene permitido cambiar el menor numero sin contar el comodin.
en este caso el numero {numeros_incorrectos[0]}""")
while True:
numeros_incorrectos[0] = int(input("Numero nuevo: "))
if check(numeros_incorrectos[0]) == True:
if numeros_incorrectos[0] in numeros_restantes:
numeros_restantes.remove(numeros_incorrectos[0])
numeros_correctos.append(numeros_incorrectos[0])
numeros_incorrectos.pop(0)
break
else:
break
numeros_incorrectos.append(comodin)
elif len(numeros_restantes) > 1 and comodin_correcto == True:
n = 1
print(f"Ha acertado en el comodin!!! pero se equivoco en estos numeros {numeros_incorrectos}, puede volver a cambiarlos")
for x in range(0,len(numeros_incorrectos)):
while True:
numero = int(input(f"Numero {n}:"))
estado_check = check(numero)
if numero == comodin:
print("Ya ha elegido el numero del comodin, eliga otro")
estado_check = False
if estado_check is True:
n += 1
if numero in numeros_restantes:
numeros_restantes.remove(numero)
numeros_correctos.append(numero)
else:
numeros_incorrectos.append(numero)
numeros_incorrectos.pop(0)
break
Resultados de premios
print(f"Los numeros en la tombola fueron {numeros_tombola}")
print(f"Los numeros elegidos fueron {numeros_correctos + numeros_incorrectos}")
if len(numeros_correctos) == 7:
print("Has ganado la loteria!!!, su premio es de 50.000.000$")
elif len(numeros_correctos) == 6 and comodin_correcto == False:
print("Has acertado todos los numeros excepto el comodin!!!, su premio es de 25.000.000$")
elif len(numeros_correctos) == 6 and comodin_correcto == True:
print("Has acertado 5 numeros y el comodin!!!, su premio es de 10.000.000$")
elif len(numeros_correctos) == 5 and comodin_correcto == False:
print("Has acertado 5 numeros y no el comodin!!!, su premio es de 2.000.000")
elif len(numeros_correctos) < 6 and comodin_correcto == True:
print("Has acertado el comodin!!!, su premio es de $100.000")
else:
print(f"Ha acertado en {len(numeros_correctos)} numeros pero no ha ganado nada nada D;, vuelva a intentarlo")
from random import randint
Generador de numeros en la tomobola
numeros_tombola = [] for x in range(1,8): while True: numero_aleatorio = randint(1,20) if numero_aleatorio not in numeros_tombola: numeros_tombola.append(numero_aleatorio) break
Check de restricciones
def check(b): estado_check = False if b > 20 or b < 0: print("El numero tiene que estar entre 0 y 20") elif b in numeros_elegidos: print("Eliga un numero no repetido") else: estado_check = True return estado_check
Input de numeros elegidos
n = 1 numeros_elegidos = [] for y in range(0,7): while True: if n == 7: numero = int(input("Comodin: ")) else: numero = int(input(f"Numero {n}: "))
comodin = numeros_elegidos[-1] numeros_elegidos.pop(-1)
numeros_incorrectos = [] numeros_correctos = [] numeros_restantes = []
for x in numeros_tombola: numeros_restantes.append(x)
for z in numeros_elegidos: if z in numeros_tombola: numeros_correctos.append(z) numeros_restantes.remove(z) else: numeros_incorrectos.append(z)
if comodin in numeros_restantes: comodin_correcto = True numeros_restantes.remove(comodin) numeros_correctos.append(comodin)
elif len(numeros_restantes) == 1: comodin_correcto = False numeros_incorrectos.append(comodin) if comodin < numeros_restantes[0]: mayor_menor = "mayor" else: mayor_menor = "menor" else: comodin_correcto = False numeros_incorrectos.append(comodin)
if len(numeros_restantes) == 1 and comodin_correcto == False: print(f"""Felicidades!!!, Acertaste en todas excepto en el comodin, tiene permitido cambiarlo. (Pista: el numero es {mayor_menor} a {comodin}""") while True: comodin = int(input("Comodin: ")) if check(comodin) == True: if comodin == numeros_restantes[0]: numeros_restantes.remove(comodin) numeros_correctos.append(comodin) break else: break
elif len(numeros_restantes) > 1 and comodin_correcto == False: numeros_incorrectos.remove(comodin) numeros_incorrectos.sort() print(f"""Se equivoco en los numeros {numeros_incorrectos} y en el comodin {comodin}, tiene permitido cambiar el menor numero sin contar el comodin. en este caso el numero {numeros_incorrectos[0]}""") while True: numeros_incorrectos[0] = int(input("Numero nuevo: ")) if check(numeros_incorrectos[0]) == True: if numeros_incorrectos[0] in numeros_restantes: numeros_restantes.remove(numeros_incorrectos[0]) numeros_correctos.append(numeros_incorrectos[0]) numeros_incorrectos.pop(0) break else: break numeros_incorrectos.append(comodin)
elif len(numeros_restantes) > 1 and comodin_correcto == True: n = 1 print(f"Ha acertado en el comodin!!! pero se equivoco en estos numeros {numeros_incorrectos}, puede volver a cambiarlos") for x in range(0,len(numeros_incorrectos)): while True: numero = int(input(f"Numero {n}:")) estado_check = check(numero) if numero == comodin: print("Ya ha elegido el numero del comodin, eliga otro") estado_check = False if estado_check is True: n += 1 if numero in numeros_restantes: numeros_restantes.remove(numero) numeros_correctos.append(numero) else: numeros_incorrectos.append(numero) numeros_incorrectos.pop(0) break
Resultados de premios
print(f"Los numeros en la tombola fueron {numeros_tombola}") print(f"Los numeros elegidos fueron {numeros_correctos + numeros_incorrectos}")
if len(numeros_correctos) == 7: print("Has ganado la loteria!!!, su premio es de 50.000.000$")
elif len(numeros_correctos) == 6 and comodin_correcto == False: print("Has acertado todos los numeros excepto el comodin!!!, su premio es de 25.000.000$")
elif len(numeros_correctos) == 6 and comodin_correcto == True: print("Has acertado 5 numeros y el comodin!!!, su premio es de 10.000.000$")
elif len(numeros_correctos) == 5 and comodin_correcto == False: print("Has acertado 5 numeros y no el comodin!!!, su premio es de 2.000.000")
elif len(numeros_correctos) < 6 and comodin_correcto == True: print("Has acertado el comodin!!!, su premio es de $100.000")
else: print(f"Ha acertado en {len(numeros_correctos)} numeros pero no ha ganado nada nada D;, vuelva a intentarlo")