abc.antonio Posted October 2, 2012 Share Posted October 2, 2012 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 Quote Link to comment Share on other sites More sharing options...
MarceloLopes Posted October 3, 2012 Share Posted October 3, 2012 Oi AntonioConhece 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 DELPHIprocedure 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; Quote Link to comment Share on other sites More sharing options...
MarceloLopes Posted October 3, 2012 Share Posted October 3, 2012 Sugiro a olhar este link pode baixar o executável e os fontes do projeto para implementar dentro da sua necessidade!http://www.delphiforfun.org/Programs/bigcombos.htm Quote Link to comment Share on other sites More sharing options...
abc.antonio Posted October 3, 2012 Author Share Posted October 3, 2012 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!!! Quote Link to comment Share on other sites More sharing options...
Bigode Posted November 12, 2012 Share Posted November 12, 2012 . Quote Link to comment Share on other sites More sharing options...
DixieJoe Posted January 14, 2013 Share Posted January 14, 2013 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! Quote Link to comment Share on other sites More sharing options...
DixieJoe Posted January 15, 2013 Share Posted January 15, 2013 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. Quote Link to comment Share on other sites More sharing options...
abc.antonio Posted January 17, 2013 Author Share Posted January 17, 2013 DixiJoe, boa noite!!!Enviei MP.-Antonio.- Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.