Jump to content

Auxilio Para Elaboração De Banco De Dados


abc.antonio

Recommended Posts

Boa tarde a todos,

Estou com o problema abaixo e peço auxilio para resolvê-lo:

A - Tenho um desdobramento de 60 dezenas em conjuntos de 12:

60-12-6-6 = 54.182 cartões de 12 dezenas (MM)

B - Desdobro os 54.182 cartões de 12 dezenas em cartões de 6 dezenas:

12-6-6-6 = 924 cartões de 6 dezenas (MM)

C – Terei, então, 54.182 conjuntos de 924 cartões, cada um com 6 dezenas:

54.182 x 924 = 50.064.168 cartões no total (custo x benefício inviável, no momento)

- O item A faço no GCSN, que salva o desdobramento como .txt

- O item B, como fazer? Já pesquisei algoritmos de análise combinatória, mas não obtive sucesso. Lembrando que a rotina deve buscar automaticamente os 54.182 cartões e fazer o desdobramento de 12 dezenas em 6.

- Se alguém se dispuser a me ajudar, solicito que me forneça os fontes ou me oriente como fazer, para poder elaborar outros desdobramentos.

- Em que linguagem fazer?

- Após ter feito este banco de dados, haverá uma rotina aonde serão aplicados “filtros”.

Grato,

Antonio.-

Saúde, Paz e Serenidade

Link to comment
Share on other sites

Oi Antonio

Conhece alguma linguagem de programação?

Terá que desenvolver a tua própria rotina para isso!

Mas a questão é recurso de máquina que irá jogar seu processamento lá no alto fora a disponibilidade de espaço em HD, pois ocupara um espaço considerável.

Terá que gravar em vários arquivos texto pois senão fica muito, muito lento para abrir e trabalhar sobre o arquivo!

Eu iniciei algo bem simplório e estou pesquisando sobre o tema combinação X permutação (dai sim com números pré selecionados).

Fiz um laço de repetição gerando sobre algum número inteiro até 100 uma quantidade de números combinados até o 50 no meu caso. Só para amostragem abaixo segue o código gerando uma combinação de 6 números, feita em DELPHI

procedure TMontaIrmas.Monta06;

begin

iCont := 1;

F06 := frmPrincipal.seFinalIrma.Value;

F05 := F06 -1;

F04 := F05 -1;

F03 := F04 -1;

F02 := F03 -1;

F01 := F02 -1;

I01 := frmPrincipal.seInicioIrma.Value;

for M01 := I01 to F01 do

begin

I02 := M01 + 1;

for M02 := I02 to F02 do

begin

I03 := M02 + 1;

for M03 := I03 to F03 do

begin

I04 := M03 + 1;

for M04 := I04 to F04 do

begin

I05 := M04 + 1;

for M05 := I05 to F05 do

begin

I06 := M05 + 1;

for M06 := I06 to F06 do

begin

frmPrincipal.mmIrmas.Lines.Add(FormatFloat('00', M01) + ' ' +

FormatFloat('00', M02) + ' ' +

FormatFloat('00', M03) + ' ' +

FormatFloat('00', M04) + ' ' +

FormatFloat('00', M05) + ' ' +

FormatFloat('00', M06));

iContador := iCont;

Synchronize(InformaGeracao);

Inc(iCont);

end;

end;

end;

end;

end;

end;

end;

Link to comment
Share on other sites

Boa tarde MarceloLopes e demais!!!

Marcelo, muito agradecido pelo auxilio.

Sobre tua primeira mensagem, não tenho, atualmente, conhecimento de linguagem de programação. Estou iniciando com videoaulas de Algoritmo e lógica de programação, do Prof. Neri Neitzke (Youtube).

Minha idéia é trabalhar cada uma das planilhas de 924 dezenas desdobras em 6 individualmente, ou seja, os "filtros" serão aplicados em cada uma das planilhas.

Tenho a expectativa de eliminar, só com um "filtro", mais de 75% do total inicial de cartões, o que só poderei confirmar após formar o banco de dados e implementar a rotina que tenho em mente.

Quanto a recurso de máquina, realmente é problema, mas terei que resolver.

Sobre o Delphi tenho poucas informações, estou começando a pesquisar.

Quando tiver alguma novidade, retornarei.

Um grande abraço e obrigado.

Antonio.-

Saúde, Paz e Serenidade!!!

Link to comment
Share on other sites

  • 1 month later...
  • 2 months later...

Conseguiu resolver o problema?

Talvez possa ajudar.

Me diga em que estágio está. 

Programo em Delphi e tenho bons algoritmos (muito rápidos) para gerar jogos. Nem sempre meus, mas adaptados de outras linguagens para o Delphi.

Especialmente com 25 dezenas da Lotofacil. Mas é possível adaptar para outras loterias.

 

Para geração de jogos, (insisto: por enquanto só para a Lotofacil - podendo ser adaptado para outras) consegui um algoritmo em C que adptei para Delphi. Ele gera muito rápido. Pelo menos é o que acho. São mais de 30 a 40 milhões de combinações de 15 dezenas por segundo. Trabalha com bits. Mas não é difícil de "pegar" a idéia e adaptar para outras loterias, se você já é programador.

 

Para filtrar, 1 minuto aproximadamente para gerar e filtrar 23 dezenas (490.314 combinações no total) usando uns 200 filtros diferentes.

 

Se tiver alguma idéia para melhorar meus filtros, agradeço. Qualquer filtro que julgar eficiente vale a pena testar. Fiquei curioso com o seu filtro que elimina "75%" dos jogos para 60 dezenas!

Link to comment
Share on other sites

Só complementando!

 

Assim que terminar o NovoDixie25 (para a Lotofacil), vou me dedicar a adaptar as ideias ali colocadas para outras loterias.

Vou ter que modificar bastante algumas funcões (hoje elas só trabalham com 32 bits e "acomodam" as 25 dezenas da Lotofacil).

Para mais dezenas (49, 50, 60, 80, 100) vou precisar trabalhar com outro conceito ao invés de bits. 

 

Vou ter que usar Sets. Já tenho o conceito e alguns testes feitos e pode funcionar bem. Só que são dezenas de funções que precisarão de adaptação:

Para Gerar Jogos, Gravar, Filtrar, Analisar, Combinar, Conferir, Imprimir, Comparar, etc....

 

A nova versão do NovoDixie25 (para a Lotofacil) vai ser Free - Distribuição Gratuita.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...