import random
import time
import emoji
from rich.progress import track
numeros = []
def main():
while True:
limpar_prompt()
print("-"*15 + "Sorteador de Números" + "-"*15)
print("1. Iniciar Sorteio")
print("2. Sair")
opcao = input("Escolha uma opção: ")
if opcao == '1':
iniciar_sorteio()
elif opcao == '2':
print("Saindo do programa...")
break
else:
limpar_prompt()
print("Opção inválida. Tente novamente.")
time.sleep(1.5)
def iniciar_sorteio():
limpar_prompt()
numeros.clear()
print("-"*15 + "Lista do Sorteio" + "-"*15 + "\n")
participantes = int(input("Digite a quantidade de participantes: "))
print()
if participantes > 100:
print("Erro: máximo de participantes é 100.")
time.sleep(2)
return
numeros_gerados = random.sample(range(1, 101), participantes)
print(f"{'Participantes'.rjust(15)} | {'Numeros Sorteados'.ljust(30)}")
for i in range(participantes):
numero_sorteado = numeros_gerados[i]
numeros.append(numero_sorteado)
print(f"- {str(i+1).ljust(13)} | {str(numero_sorteado).ljust(30)}")
time.sleep(0.5)
sorteando_vencedor()
def sorteando_vencedor():
print("\n" + "-"*15 + "Sorteando números" + "-"*15 + "\n")
time.sleep(1)
barra_de_progresso()
indice_ganhador = random.randint(0, len(numeros) - 1)
numero_vencedor = numeros[indice_ganhador]
ganhador_vencedor = indice_ganhador + 1
print("-"*15 + "Resultado do Sorteio" + "-"*15 + "\n")
resultado = (f'''
Numero sorteado foi o n°{numero_vencedor}.
O Ganhador foi o participante n°{ganhador_vencedor}.
Parabéns {emoji.emojize(':balloon:'*3)}!
''')
linhas = resultado.strip().split('\n')
for linha in linhas:
print(linha.strip())
input("\nPressione Enter para continuar...")
def limpar_prompt():
import os
import platform
if platform.system() == "Windows":
os.system("cls")
else:
os.system("clear")
def barra_de_progresso():
for _ in track(range(50), description="Carregando Vencedor...\n"):
time.sleep(0.10)
if __name__ == "__main__":
main()