Desde a versão 2.9 do Joga Loterias Profissional, o sistema possui o interpretador da linguagem Python embutida em seu sistema.
Tendo em vista poucas semanas para o tal aguardado sorteio da Mega da Virada, iremos fazer um jogo aleatório por quadrante, utilizando os conceitos da linguagem Python.
Como funciona?
Iremos dividir o cartão da Mega Sena em quatro partes iguais de 15 números cada, totalizando assim as 60 dezenas, conforme a figura abaixo.
Para cada quadrante, vamos sortear duas dezenas em cada.
O total gerado vai ser de 8 dezenas ao todo. Para o jogo mínimo de 6 dezenas em cada cartão da Mega Sena, iremos fazer o sistema definir 6 dezenas das 8 ao todo, sendo sempre eliminadas duas em cada geração.
Script Python
Abre o interpretador de Python e copie o código abaixo ou faça o download do script se desejar.
import random from jlp import utils # Divisão dos quadrantes. Para cada quadrante vai sortear 2 dezenas QUADRANTE_1 = [1, 2, 3, 4, 5, 11, 12, 13, 14, 15, 21, 22, 23, 24, 25] QUADRANTE_2 = [6, 7, 8, 9, 10, 16, 17, 18, 19, 20, 26, 27, 28, 29, 30] QUADRANTE_3 = [31, 32, 33, 34, 35, 41, 42, 43, 44, 45, 51, 52, 53, 54, 55] QUADRANTE_4 = [36, 37, 38, 39, 40, 46, 47, 48, 49, 50, 56, 57, 58, 59, 60] # Informa o total de jogos desejados TOTAL_JOGOS = 100 def gerar_dezenas(): dezenas = [] sorteio = random.sample(set(QUADRANTE_1), 2) for numero in sorteio: dezenas.append(numero) sorteio = random.sample(set(QUADRANTE_2), 2) for numero in sorteio: dezenas.append(numero) sorteio = random.sample(set(QUADRANTE_3), 2) for numero in sorteio: dezenas.append(numero) sorteio = random.sample(set(QUADRANTE_4), 2) for numero in sorteio: dezenas.append(numero) # Como tem 8 dezenas, o sistema vai gerar apenas 6 dezenas = random.sample(set(dezenas), 6) dezenas = sorted(dezenas) dezenas = utils.formatar_dezenas(dezenas) return ' ' .join(dezenas) meus_jogos = [] # Adiciona os jogos gerados for x in range(0, TOTAL_JOGOS): meus_jogos.append(gerar_dezenas()) # Removendo os jogos repetidos, caso exista meus_jogos = list(dict.fromkeys(meus_jogos)) # Lista os jogos gerados for jogo in meus_jogos: print(jogo)
Inicialmente iniciamos a constante de cada quadrante QUADRANTE_X, indicando as suas respectivas dezenas.
A outra constante TOTAL_JOGOS indica quantos jogos desejamos gerar.
Logo abaixo temos a função principal gerar_dezenas(), que irá gerar os números de acordo com os quadrantes. Em tese resumida, faremos o sorteio de cada quadrante usando a funcão de random.
Como teremos 8 dezenas no final de cada processo, no final do processo eu mando o sistema escolher 6 das 8 dezenas, para assim completar uma cartela de jogo simples.
No final faremos a verificação para ver se algum jogo repetiu, realizando assim a sua exclusão. Então pode ser que a quantidade definida de jogos não seja obedecida, caso tenha jogos repetidos.
Ao compilar o script, irá aparecer uma tela com os jogos das dezenas já geradas.
Download Script .jlpy
Se não funcionar, na linha 35, basta trocar o método utils por isso:
dezenas = [str(dez) for dez in dezenas]
Muito bom
Olá Mauricio, além disso, é preciso também eliminar a linha: from jlp import utils,