Jump to content

Software Dixie.


wesleybobato

Recommended Posts

2 horas atrás, oiregor disse:

98,88% de cobertura (1414 sorteio) - até o sorteio 1430 - com 9 pontos ou mais:

01 02 03 04 05 06 07 08 09 10 11 13 19 22 24 

07 10 12 13 14 15 16 17 18 20 21 22 23 24 25 

Oiregor, dois e demais colegas,

 

Quando enviei para o dois, meu programa tinha encontrado apenas 7 linhas com mais acertos de 9 ou mais dezenas nas 1431 analisadas.

 

Agora são 8.

 

01-04-06-07-10-11-13-14-15-20-21-22-23-24-25
01-02-04-05-10-11-12-13-14-15-18-21-22-23-24
01-02-06-09-10-11-12-13-14-18-19-21-22-23-25
01-02-03-04-06-10-11-13-14-15-18-21-23-24-25
01-02-04-06-10-11-12-13-14-18-19-21-23-24-25
01-02-09-10-11-12-13-14-18-19-21-22-23-24-25
01-04-09-10-11-13-15-18-19-20-21-22-23-24-25
02-04-05-10-11-12-13-15-18-19-21-22-23-24-25

 

A primeira foi a que mais vezes pegou 9 ou mais pontos com 1024(conferido até o 1428, não até o o 1431...meu arquivo de resultados para conferência não estava atualizado).

 

A última linha pegou 1015 vezes.

 

Mas vejam o seguinte: tivemos 21 soreios nos 1428 que nenhuma dessas 8 linhas pegou 9 ou mais pontos....

 

Pensei em fazer o seguinte: buscar mais linhas 'MELHORES' até que consigamos fechar todos os sorteios. 

Depois combinar as linhas que apareceram 2 a 2  para ver se algum PAR teria acertado em 100%...

 

Meio estranha a maneira de procurar, mas não estou conseguindo pensar em outra forma mais rápida.

Mesmo dessa forma, vou demorar varias horas para encontrar mais linhas de 15 até zerar os sorteios...

 

Vamos continuar procurando.

  • Like 3
Link to comment
Share on other sites

três linhas é fácil para 100% em 9 pontos...
07 10 12 13 14 15 16 17 18 20 21 22 23 24 25

01 02 03 05 06 09 11 12 13 15 16 18 21 22 23

01 02 03 04 05 06 07 08 09 10 11 13 19 22 24

Respectivamente:

9pts: 484 462 508

10pts: 325 321 328

11pts: 128 141 120

12pts: 24 22 21

13pts: 2 3 0

14pts: 0 0 0

15pts: 0 0 0

 

Observando o melhor das três linhas nos 1430 sorteios teríamos:

9pts: 313

10pts: 684

11pts: 361

12pts: 67

13pts: 5

14pts: 0

15pts: 0

 

--------------------

 

O problema de usar "as melhores" é a "influência" que ela exerce sobre os demais jogos, ou seja, a melhor sobrepõe premiação comum aos demais jogos... exemplo simples:

sorteio | jogo 1 | jogo 2 | jogo 3 | jogo 4 | melhor

.0001. | ...10... | ...10... | ...08... | ...08... | ...10... |

.0002. | ...10... | ...08... | ...10... | ...08... | ...10... |

.0003. | ...10... | ...10... | ...08... | ...08... | ...10... |

.0004. | ...10... | ...08... | ...08... | ...10... | ...10... |

.0005. | ...10... | ...08... | ...10... | ...10... | ...10... |

.0006. | ...09... | ...08... | ...08... | ...08... | ...09... |

.0007. | ...09... | ...08... | ...08... | ...08... | ...09... |

.0008. | ...08... | ...10... | ...08... | ...08... | ...10... |

.0009. | ...08... | ...08... | ...09... | ...08... | ...09... |

.0010. | ...08... | ...08... | ...08... | ...09... | ...09... |

 

Vejam que nesse exemplo simplório, o "jogo 1" corresponde à 70% da cobertura dos sorteios... os outros três tem 30% de cobertura (lembrando que o objetivo é nove pontos), porém o "jogo máximo", influi para que os demais sejam fracos, pois somente combinações de dezenas "inversas" a ele (ao "jogo máximo") poderão completar o objetivo.

 

Exemplo 2:

sorteio | jogo 5 | jogo 6 | jogo 7 | melhor

.0001. | ...08... | ...10... | ...08... | ...10... |

.0002. | ...08... | ...08... | ...10... | ...10... |

.0003. | ...10... | ...10... | ...08... | ...10... |

.0004. | ...08... | ...10... | ...08... | ...10... |

.0005. | ...10... | ...08... | ...10... | ...10... |

.0006. | ...09... | ...08... | ...08... | ...09... |

.0007. | ...09... | ...08... | ...10... | ...10... |

.0008. | ...08... | ...10... | ...08... | ...10... |

.0009. | ...08... | ...08... | ...09... | ...09... |

.0010. | ...08... | ...08... | ...08... | ...09... |

 

Nesse segundo modelo temos somente 3 linhas, com 40% de aproveitamento (a partir de 9 acertos), porém juntas elas fazem a mesma garantia de 100% dos sorteios com 9 acertos ou mais.

Ou seja em comparação com o primeiro exemplo, essa segunda é uma matriz mais otimizada.

 

------------------------------------------

 

Entendo que esse é o conceito básico de uma matriz, porém cruzando com os 3.268.760 jogos da lotofácil e não somente com os 1430 sorteios eheheh

Digo isso por "olhar" o processamento do ININUGA por exemplo, reparem que ele mostra que são necessários no mínimo matemático 500 jogos para fechar a matriz, mas ao processar atinge até 3mil jogos e depois começa a reduzir.

Se estou certo, primeiro ele busca uma quantidade de inicial de jogos para que estes tenham a garantia pretendida. Em seguida ele faz a exclusão de UM jogo, e testa a troca de todos os demais para que um novo jogo supra a garantia recém excluída. E executa isso insistentes vezes, até que TODOS os 3.268.760 sejam trocados em todas as posições e não seja possível mais excluir um jogo da base para que essa base seja então considerada a "definitiva" melhor matriz 100%.

 

Assim parece até fácil... mas já tentei insistentes vezes refazer isso e não consegui... se alguém tiver um código fonte para eu analisar e converter em VBA, ou SQL eu agradeço. E ainda publico o passo a passo para tal procedimento...

 

Link to comment
Share on other sites

NOVO Exemplo, com somente 1.151 testes aleatórios executados:
01 02 04 06 08 10 11 14 16 17 18 19 21 23 24

01 03 04 07 09 11 12 13 14 15 18 20 21 22 25

02 03 06 07 08 09 10 12 15 16 17 22 23 24 25

 

100% para 9 acertos até o sorteio 1430. E tem assim detalhado:

9pts: 454 457 468 >> 285
10pts: 340 352 328 >> 716
11pts: 121 132 114 >> 356
12pts: 20 22 22 >> 64
13pts: 3 3 3 >> 9
14pts: 0 0 0 >> 0
15pts: 0 0 0 >> 0

 (na última coluna é o melhor a cada sorteio)

Link to comment
Share on other sites

439 testes...

02 05 07 08 09 10 11 12 17 18 19 20 22 23 25     
01 02 03 05 06 08 09 10 14 15 16 17 18 21 24     
01 03 04 06 07 11 12 13 14 16 19 22 23 24 25

 

com jogos aleatórios... e não força bruta (testando um por um)... para uma rápida redução deve ser utilizado no ININUGA o processamento aleatório, e depois quando "trava" (ou após XXX jogos aleatórios testados) o programa parte para força bruta, mas mesmo assim acredito que não reinicie do primeiro jogo (01 02 03 04 05 06 07 08 09 10 11 12 13 14 15), deve sempre continuar do jogo que fez a última troca, e continua até efetuar a roda completa dos 3.268.760 jogos...

 

Link to comment
Share on other sites

Guest Zangado

desculpa, mas não consigo entender oq vc´s estão fazendo e talvez escreva algumas besteiras

não me dou bem com a LF mas tudo bem

considerando os 1435 sorteios "aleatório  tem padrão de combinação ?"

quando se pega conjuntos de dezenas que deram em varios sorteios isso não acaba tonando o fator tbm aleatório para os próximos?

e a variancia entre um sorteio e o outro vc determinam isso tbm?

 

o @oiregor estipulou usar todas as combinações possíveis para se filtrar os conjuntos de melhor predominância dentro os resultados 

sinceramente eu estou totalmente perdido nisso que vc´s estão fazendo

 

não seria melhor criar sequencias de padrões conhecidos e varrer os dos sorteios?

será que alguem pode me dar uma luz do que estão fazendo?

@dois se puder me emprestar sua macro para eu tentar entender a rotina

 

até

 

 

 

 

 

 

Link to comment
Share on other sites

22 horas atrás, dois disse:

 

 

 

Eu também gosto de análises e conferências tipo um-a-um,

então faço este tipo de uso supracitado somente:

1.) Quando a dezena esteja identificada no header/cabeçalho da planilha.

2.) Quando não trabalho com o número da dezena e sim com a posição dela,

     ou com grupos de dezenas.

 

Um abraço !

Dois, oiregor e demais,

 

Ufaa.... Depois de quase 2 dias quebrando a cabeça e rodando minhas rotinas, acabei um teste aqui para o qual gostaria que vocês comentassem, por favor, se tem lógica.

 

Usando todos os sorteios até o 1435, procurei qual das 3.268.760 acertou mais vezes  9-10-11-12-13-14-15 pontos.

Encontrei esta linha:

 

01-04-06-07-10-11-13-14-15-20-21-22-23-24-25 - acertou em 1028 dos 1435 sorteios

 

Depois peguei os 407 sorteios que "faltaram" para acertar nos 1435... E separei.

 

Agora fiz nova procura nos 3.268.760 buscando qual conjunto acertou mais vezes 9-10-11-12-13-14-15. Encontrei este;

 

01-02-03-05-06-08-09-11-12-15-16-17-18-19-20 - acertou em 396 dos 407 que "faltaram" para o primeiro, que tinha sido o melhor.

 

Agora, temos 2 conjuntos que acertaram em 1424 sorteios dos 1435... Faltam 11 sorteios para FECHAR nos 100% dos 1435, por este raciocínio que utilizei.

Então estes 2 conjuntos de 15 seriam os "melhores 2" até o sorteio 1435??????? Deixando apenas 11 sorteios "de fora".

 

01-04-06-07-10-11-13-14-15-20-21-22-23-24-25
01-02-03-05-06-08-09-11-12-15-16-17-18-19-20  

 

Estes 2 conjuntos acertaram 99,234% até o sorteio 1435... TERIAM SIDO OS MELHORES, PELO MEU RACIOCÍNIO.

 

Pra mim, faz sentido dizer que não tivemos, até o sorteio 1435 nenhum grupo de 2 conjuntos de 15 que acertaram 9 ou mais pontos em TODOS OS 1435 sorteios.

 

Estou correto no meu raciocínio?

 

----

 

Claro que isso não quer dizer que não haveria 2 outros acertando 100% em todos os sorteios possíveis, se utiizássemos os 3.268.760 contra os 3.268.760... Mas isso é tarefa para gigantes. E eu sou só formiguinha...

 

----

 

O que mais a gente poderia fazer para melhorar essa busca? 

 

 

  • Like 3
Link to comment
Share on other sites

6 horas atrás, edcronos2 disse:

desculpa, mas não consigo entender oq vc´s estão fazendo e talvez escreva algumas besteiras

não me dou bem com a LF mas tudo bem

considerando os 1435 sorteios "aleatório  tem padrão de combinação ?"

quando se pega conjuntos de dezenas que deram em varios sorteios isso não acaba tonando o fator tbm aleatório para os próximos?

e a variancia entre um sorteio e o outro vc determinam isso tbm?

 

o @oiregor estipulou usar todas as combinações possíveis para se filtrar os conjuntos de melhor predominância dentro os resultados 

sinceramente eu estou totalmente perdido nisso que vc´s estão fazendo

 

não seria melhor criar sequencias de padrões conhecidos e varrer os dos sorteios?

será que alguem pode me dar uma luz do que estão fazendo?

@dois se puder me emprestar sua macro para eu tentar entender a rotina

 

até

 

 

 

Olá irmão e parceiro edcronos2,

 

Estive fora hoje e agora vou jantar...

 

Fiz alterações e outros testes na planilha e está incompleta...

Infelizmente não fiz backup da versão 1.0...

restaurei da lixeira uma de 11/11/2016 que parece que é a versão que

coloquei pra rodar em 11/11/2016 para COMBIN(3.268.760;2)...

Estou te mandando ela via MP.

 

Um abraço!

 

Link to comment
Share on other sites

2 horas atrás, DixieJoe disse:

 

 

Olá amigo e parceiro DixieJoe e demais interessados,

 

Questão (1)

Então estes 2 conjuntos de 15 seriam os "melhores 2" até o sorteio 1435??????? Deixando apenas 11 sorteios "de fora".

01-04-06-07-10-11-13-14-15-20-21-22-23-24-25
01-02-03-05-06-08-09-11-12-15-16-17-18-19-20  

Estes 2 conjuntos acertaram 99,234% até o sorteio 1435... TERIAM SIDO OS MELHORES, PELO MEU RACIOCÍNIO.

 

Resposta: Até o momento este é o melhor !!!

 

 

Questão (2)

Pra mim, faz sentido dizer que não tivemos, até o sorteio 1435 nenhum grupo de 2 conjuntos de 15 que acertaram 9 ou mais pontos em TODOS OS 1435 sorteios.

Estou correto no meu raciocínio?

 

Resposta: Eu alterei a macro da minha planilha pra fazer isto e também não retornou NENHUM JOGO !!!

 

 

Questão (3)

Claro que isso não quer dizer que não haveria 2 outros acertando 100% em todos os sorteios possíveis, se utiizássemos os 3.268.760 contra os 3.268.760... Mas isso é tarefa para gigantes. E eu sou só formiguinha...

 

Resposta: Até aqui está se comprovando TUDO que te expliquei no nosso papo

                  de quase 3 (TRES) horas via Skype, kkk

                  inclusive a tendência frequente do ESPELHO !!!

 

 

Questão (4)

O que mais a gente poderia fazer para melhorar essa busca? 

 

Resposta: A princípio trabalhar com Matriz INVERSA conforme te falei via MP!!!

 

 

Um abraço!

  • Like 1
Link to comment
Share on other sites

Guest Zangado
22 minutos atrás, dois disse:

 

 

Olá irmão e parceiro edcronos2,

 

Estive fora hoje e agora vou jantar...

 

Fiz alterações e outros testes na planilha e está incompleta...

Infelizmente não fiz backup da versão 1.0...

restaurei da lixeira uma de 11/11/2016 que parece que é a versão que

coloquei pra rodar em 11/11/2016 para COMBIN(3.268.760;2)...

Estou te mandando ela via MP.

 

Um abraço!

 

valeu , é que eu ainda não capto oq vc´s estão fazendo

só pena que não mandou a senha

mas de maneira resumida suponho que vc´s estão pegando cada sequencia de x dezenas e testando em cima dos resultados para testar qual sequencia mais puntua

 

mas dentro oq tenho visto existe a diferença de um sorteio para o proximo , repete x falta y

isso faz com que qualquer sequencia separada do conjunto tenha vazios de nos determinados sorteios inclusive os futuros

em um teste rapido aqui comparando de 3 em 3 sorteios de 1 para os 2 anteriores 

obtive esse sequenciamento

### 42657   1 2 4 5 7 8 11 12 13 14 15 16 19 22 23   28737100 12749195         2 3         8   10       14     17 18       22   24 25
### 42660   2 4 5 6 8 9 10 11 13 17 18 20 21 23 25   12308917 20805237       1     4 5 6 7   9   11 12 13   15 16     19 20 21   23   25
### 42662   1 3 4 5 8 9 11 12 13 14 16 19 20 21 25   24345201 12749195         2 3         8   10       14     17 18       22   24 25
### 42664   2 3 4 7 8 10 12 14 15 16 18 22 23 24 25   15117967 20805237       1     4 5 6 7   9   11 12 13   15 16     19 20 21   23   25
### 42667   1 2 7 10 11 12 14 15 16 17 18 19 20 22 25   25489385 12749195         2 3         8   10       14     17 18       22   24 25
### 42669   2 3 4 5 6 8 9 13 17 18 19 20 21 22 25   16454137 20805237       1     4 5 6 7   9   11 12 13   15 16     19 20 21   23   25
### 42671   5 7 8 9 10 12 13 14 15 16 18 19 20 21 25   1556209 12749195         2 3         8   10       14     17 18       22   24 25
### 42674   1 3 4 5 7 8 9 13 15 16 20 21 22 23 25   24581693 20805237       1     4 5 6 7   9   11 12 13   15 16     19 20 21   23   25
### 42678   1 2 7 8 9 10 12 14 15 16 17 19 20 23 25   25669477 12749195         2 3         8   10       14     17 18       22   24 25
### 42681   1 3 4 5 10 11 12 16 17 18 20 21 23 24 25   24175543 20805237       1     4 5 6 7   9   11 12 13   15 16     19 20 21   23   25
### 42683   3 6 7 9 10 12 14 15 16 18 20 22 23 24 25   5090991 12749195         2 3         8   10       14     17 18       22   24 25
### 42685   3 4 5 6 7 9 10 12 13 15 18 19 22 23 24   8238286 20805237       1     4 5 6 7   9   11 12 13   15 16     19 20 21   23   25

 

 

as dezenas em verde é pq sai no sorteio de baixo 

apesar do teste se simples e pular de linha nos sorteios só obtem 2 padrões

mas acho que vou ter que analisar a logica novamente

 

Link to comment
Share on other sites

17 minutos atrás, edcronos2 disse:

 

 

 

Questão (1)

valeu , é que eu ainda não capto oq vc´s estão fazendo

Resposta: Posso te explicar assim como fiz com o DixieJoe !!!

 

Questão (2)

só pena que não mandou a senha

Resposta: É a mesma senha da outra planilha que te mandei tempos atrás!!!

                 Vou te mandar via MP.

 

Questão (3)

mas de maneira resumida suponho que vc´s estão pegando cada sequencia de x dezenas e testando em cima dos resultados

para testar qual sequencia mais puntua

 

mas dentro oq tenho visto existe a diferença de um sorteio para o proximo , repete x falta y

isso faz com que qualquer sequencia separada do conjunto tenha vazios de nos determinados sorteios inclusive os futuros

 

Resposta: SE você ler SOMENTE o que já foi postado aqui neste tópico entenderá melhor !!!

                 Mas, SE mesmo assim continuar com dúvidas, posso te explicar assim como fiz com o DixieJoe !!!

 

 

Um abraço !

 

Link to comment
Share on other sites

Guest Zangado
1 minuto atrás, dois disse:

Resposta: SE você ler SOMENTE o que já foi postado aqui neste tópico entenderá melhor !!!

                 Mas, SE mesmo assim continuar com dúvidas, posso te explicar assim como fiz com o DixieJoe !!!

é que sou meio ruim de entender mesmo, ainda mais que é um assunto que

não gosto da loto facil

não me ligo em matrizes lotericas

estou querendo largar disso

fora que esse treco está acabando com minha visão "acho que tenho que usar oculos"

 

bem

estava dando uma olhada em suas  macros

vc faz tudo oq eu não faço kkkk

nomes de variaveis grandes,

comentários

 

para falar a verdade mesmo essa sendo a regra dos proficionais eu não consigo nem fuça macros assim

quando eu pegava algo que achava interessante eu sempre tirava todos os comentários e trocava os nomes por coisas mais simples para conseguir entender oq as macros fazem

 

mas bem, em uma primeira olhada pode sim melhorar e muito

 

não use leitura ou escrita de celulas dentro de loop, o fator de velocidade de escrita e gravação de celulas pod ser minimizado se a aba não tiver em formulas nem formatações

     For yr = 1 To mttconcu     ''''Confere em cada concurso
          macerto_MAIOR = 0
          macerto_MENOR = 8888
          For yll = 3 To 22    ''''Confere até 20 LINHAS da Matriz
               If Cells(yll, 2).Value = "" Then
                    Exit For
               End If
               mqtdeacertos = 0
               For ycc = 2 To 26    ''''Confere até 25 dezenas da LINHA da Matriz
                    mdzatual = Cells(yll, ycc).Value
                    If mdzatual = "" Then
                         Exit For
                    End If

poderia ficar assim

     rang1 = Range("B3:B22").Value2
     rang2 = Range("B3:AA22").Value2
     For yr = 1 To mttconcu     ''''Confere em cada concurso
          macerto_MAIOR = 0
          macerto_MENOR = 8888
          For yll = 1 To 20    ''---------''Confere até 20 LINHAS da Matriz---------------------rang1 = Range("B3:B22").Value2
               If rang1(yll, 1) = "" Then Exit For
               mqtdeacertos = 0
               For ycc = 2 To 26    ''----------''Confere até 25 dezenas da LINHA da Matriz----rang2 = Range("B3:AA22").Value2
                    mdzatual = rang2(yll, ycc)
                    If rang2(yll, ycc) = "" Then Exit For

                    If Val(mdzatual) < 1 Or Val(mdzatual) > 25 Then
                         MsgBox "Na LINHA=" & (yll) & " a Dezena " & mdzatual & "é inválida."

isso já tira o stress da chamada da macro na planilha a todo momento , fora que trabalhar direto na memoria é mais rapido

 

 

 

Link to comment
Share on other sites

35 minutos atrás, edcronos2 disse:

mas bem, em uma primeira olhada pode sim melhorar e muito

 

 

Não tenho a menor dúvida disto !!!

 

Esqueci de te dizer:

A macro que analisa as 2 melhores LINHAS é a Sub LF_2ml() que está no Módulo 3 (TRÊS)

sendo que as Matrizes aprovadas são gravadas na aba LF_2L_15

 

Um abraço !

Link to comment
Share on other sites

Guest Zangado

sobre o combinador

pensei nisso

     Dim combi(1 To 3268760, 1 To 25) As Boolean
     For yp01 = 1 To (mdezfim - 14)  ''''desdobre de 15 dezenas
          For yp02 = (yp01 + 1) To mdezfim
               For yp03 = (yp02 + 1) To mdezfim
                    For yp04 = (yp03 + 1) To mdezfim
                         For yp05 = (yp04 + 1) To mdezfim
                              For yp06 = (yp05 + 1) To mdezfim
                                   For yp07 = (yp06 + 1) To mdezfim
                                        For yp08 = (yp07 + 1) To mdezfim
                                             For yp09 = (yp08 + 1) To mdezfim
                                                  For yp10 = (yp09 + 1) To mdezfim
                                                       For yp11 = (yp10 + 1) To mdezfim
                                                            For yp12 = (yp11 + 1) To mdezfim
                                                                 For yp13 = (yp12 + 1) To mdezfim
                                                                      For yp14 = (yp13 + 1) To mdezfim
                                                                           For yp15 = (yp14 + 1) To mdezfim
                                                                                l = l + 1
                                                                                combi(l.yp01) = 1: combi(l.yp02) = 1: combi(l.yp03) = 1: combi(l.yp04) = 1: combi(l.yp05) = 1
                                                                                combi(l.yp06) = 1: combi(l.yp07) = 1: combi(l.yp08) = 1: combi(l.yp09) = 1: combi(l.yp10) = 1
                                                                                combi(l.yp11) = 1: combi(l.yp12) = 1: combi(l.yp13) = 1: combi(l.yp14) = 1: combi(l.yp15) = 1
                                                                           Next
                                                                      Next
                                                                 Next
                                                            Next
                                                       Next
                                                  Next
                                             Next
                                        Next
                                   Next
                              Next
                         Next
                    Next
               Next
          Next
     Next

mas dixie postou um gerador de combinações por bit

sendo assim tanto gerar como comparar se tornaria muito rapido por bit

seria só adicionar as ferramentas necessárias de conversão

bem comparar é facil , mas creio que para contar as dezenas que passaram no teste vai ter que converter para o resultado novamente para então fazer a contagem e crasificação

 

Link to comment
Share on other sites

20 minutos atrás, edcronos2 disse:

sobre o combinador

pensei nisso


     Dim combi(1 To 3268760, 1 To 25) As Boolean
     For yp01 = 1 To (mdezfim - 14)  ''''desdobre de 15 dezenas
          For yp02 = (yp01 + 1) To mdezfim
               For yp03 = (yp02 + 1) To mdezfim
                    For yp04 = (yp03 + 1) To mdezfim
                         For yp05 = (yp04 + 1) To mdezfim
                              For yp06 = (yp05 + 1) To mdezfim
                                   For yp07 = (yp06 + 1) To mdezfim
                                        For yp08 = (yp07 + 1) To mdezfim
                                             For yp09 = (yp08 + 1) To mdezfim
                                                  For yp10 = (yp09 + 1) To mdezfim
                                                       For yp11 = (yp10 + 1) To mdezfim
                                                            For yp12 = (yp11 + 1) To mdezfim
                                                                 For yp13 = (yp12 + 1) To mdezfim
                                                                      For yp14 = (yp13 + 1) To mdezfim
                                                                           For yp15 = (yp14 + 1) To mdezfim
                                                                                l = l + 1
                                                                                combi(l.yp01) = 1: combi(l.yp02) = 1: combi(l.yp03) = 1: combi(l.yp04) = 1: combi(l.yp05) = 1
                                                                                combi(l.yp06) = 1: combi(l.yp07) = 1: combi(l.yp08) = 1: combi(l.yp09) = 1: combi(l.yp10) = 1
                                                                                combi(l.yp11) = 1: combi(l.yp12) = 1: combi(l.yp13) = 1: combi(l.yp14) = 1: combi(l.yp15) = 1
                                                                           Next
                                                                      Next
                                                                 Next
                                                            Next
                                                       Next
                                                  Next
                                             Next
                                        Next
                                   Next
                              Next
                         Next
                    Next
               Next
          Next
     Next

mas dixie postou um gerador de combinações por bit

sendo assim tanto gerar como comparar se tornaria muito rapido por bit

seria só adicionar as ferramentas necessárias de conversão

bem comparar é facil , mas creio que para contar as dezenas que passaram no teste vai ter que converter para o resultado novamente para então fazer a contagem e crasificação

 

 

 

Questão (1)

sobre o combinador

pensei nisso

resposta: A princípio parece que não mudou quase nada... então seria fazer as substituições relacionadas.

               Acho que sei a resposta, mas me confirma:  ISTO FUNCIONA NO EXCEL 2000 ???

 

Questão (2)

mas dixie postou um gerador de combinações por bit

sendo assim tanto gerar como comparar se tornaria muito rapido por bit

seria só adicionar as ferramentas necessárias de conversão

bem comparar é facil , mas creio que para contar as dezenas que passaram no teste vai ter que converter para o resultado novamente para então fazer a contagem e crasificação

resposta: Por isso uso muito pouco este tipo.

 

 

 

Um abraço!

Link to comment
Share on other sites

Guest Zangado
2 minutos atrás, dois disse:

resposta: A princípio parece que não mudou quase nada... então seria fazer as substituições relacionadas.

               Acho que sei a resposta, mas me confirma:  ISTO FUNCIONA NO EXCEL 2000 ???

tem que reescrever o restante pq vc junta as dezenas concatenando

nesse caso que eu fiz usei uma casa da array para cada dezena

 

no caso para testar as dezenas do sorteio é de maneira direta

seria muito mais rapido do que o seu processo

mas mesmo assim demorado pelo numero de combinações e quantidade de vezes a se testar 3268760*^1434*~15

o processo de bit seria infinitamente mais rapido *~15

mas como se tem eliminação se pode guardar as combinações que passaram e depois no final fazer classificação delas e se necessário uma nova filtragem

 

mas ainda acho isso algo que vai gerar dados redundantes

Link to comment
Share on other sites

6 minutos atrás, edcronos2 disse:

tem que reescrever o restante pq vc junta as dezenas concatenando

nesse caso que eu fiz usei uma casa da array para cada dezena

 

no caso para testar as dezenas do sorteio é de maneira direta

seria muito mais rapido do que o seu processo

mas mesmo assim demorado pelo numero de combinações e quantidade de vezes a se testar 3268760*^1434*~15

o processo de bit seria infinitamente mais rapido *~15

mas como se tem eliminação se pode guardar as combinações que passaram e depois no final fazer classificação delas e se necessário uma nova filtragem

 

mas ainda acho isso algo que vai gerar dados redundantes

 

 

tem que reescrever o restante pq vc junta as dezenas concatenando

Foi o que eu quis dizer  ... então seria fazer as substituições relacionadas.

 

no caso para testar as dezenas do sorteio é de maneira direta

seria muito mais rapido do que o seu processo

mas mesmo assim demorado pelo numero de combinações e quantidade de vezes a se testar 3268760*^1434*~15

o processo de bit seria infinitamente mais rapido *~15

mas como se tem eliminação se pode guardar as combinações que passaram e depois no final fazer classificação delas e se necessário uma nova filtragem

Só testando pra sabermos !!!.

 

 

23 minutos atrás, dois disse:

Questão (1)

sobre o combinador

pensei nisso

resposta: A princípio parece que não mudou quase nada... então seria fazer as substituições relacionadas.

               Acho que sei a resposta, mas me confirma:  ISTO FUNCIONA NO EXCEL 2000 ???

 

 

 

Aqui quando rodo a macro dá este erro:

 

 

LF 121 edcronos2 erro de compilação.jpg

Link to comment
Share on other sites

Guest Zangado

kkkk eu usei ponto em vez  virgula

seria assim

 combi(l, yp01) = 1: combi(l, yp02) = 1: combi(l, yp03) = 1: combi(l, yp04) = 1: combi(l, yp05) = 1
 combi(l, yp06) = 1: combi(l, yp07) = 1: combi(l, yp08) = 1: combi(l, yp09) = 1: combi(l, yp10) = 1
 combi(l, yp11) = 1: combi(l, yp12) = 1: combi(l, yp13) = 1: combi(l, yp14) = 1: combi(l, yp15) = 1

mas como falei,

eu tenho que entender oq faz o restante do seu codigo para fazer a modificação

Edited by Zangado
Link to comment
Share on other sites

1 hora atrás, dois disse:

mas dixie postou um gerador de combinações por bit

sendo assim tanto gerar como comparar se tornaria muito rapido por bit

seria só adicionar as ferramentas necessárias de conversão

bem comparar é facil , mas creio que para contar as dezenas que passaram no teste vai ter que converter para o resultado novamente para então fazer a contagem e crasificação

resposta: Por isso uso muito pouco este tipo.

 

35 minutos atrás, edcronos2 disse:

kkkk eu usei ponto em vez  virgula

seria assim


 combi(l, yp01) = 1: combi(l, yp02) = 1: combi(l, yp03) = 1: combi(l, yp04) = 1: combi(l, yp05) = 1
 combi(l, yp06) = 1: combi(l, yp07) = 1: combi(l, yp08) = 1: combi(l, yp09) = 1: combi(l, yp10) = 1
 combi(l, yp11) = 1: combi(l, yp12) = 1: combi(l, yp13) = 1: combi(l, yp14) = 1: combi(l, yp15) = 1

mas como falei,

eu tenho que entender oq faz o restante do seu codigo para fazer a modificação

 

 

Agora sim, funciona direitinho !!!

 

E eu também tenho que corrigir, pois:

1.) NUNCA USEI DESTA FORMA !!!
2.) REALMENTE tem que reescrever o restante pq vc junta as dezenas concatenando
3.) Então NÃO seria APENAS fazer as substituições relacionadas.

 

Também é como já disse antes: SÓ TESTANDO PRA SABERMOS O RESULTADO !!!

 

 

Muitíssimo obrigado !

Link to comment
Share on other sites

Guest Zangado

@dois

po dois

eu estava aqui me indagando como vc compara as dezenas depois de concatenar

vc concatena cada dezena para depois separar por string para então comparar?
 

                    For yr = 1 To mttconcu     ''''Confere em cada concurso
                         mqtdeacertos = 0
                         For ycc = 1 To 45 Step 3    ''''Confere até 15 dezenas da LINHA da Matriz
                              mdzatual = Val(Mid(zaux(yll), ycc, 2))
                              mdzatual = "_" & mdzatual & ","
                              vmaux_ADC = InStr(zLF_ReConcurso(yr), mdzatual)
                              If vmaux_ADC > 0 Then
                                   mqtdeacertos = mqtdeacertos + 1
                              End If


                         Next

não é por nada a demora, desse modo só em mil anos mesmo

vou tentar enxugar o processo e depois te mando a macro


 

Link to comment
Share on other sites

1 minuto atrás, edcronos2 disse:

@dois

po dois

eu estava aqui me indagando como vc compara as dezenas depois de concatenar

vc concatena cada dezena para depois separar por string para então comparar?
 


                    For yr = 1 To mttconcu     ''''Confere em cada concurso
                         mqtdeacertos = 0
                         For ycc = 1 To 45 Step 3    ''''Confere até 15 dezenas da LINHA da Matriz
                              mdzatual = Val(Mid(zaux(yll), ycc, 2))
                              mdzatual = "_" & mdzatual & ","
                              vmaux_ADC = InStr(zLF_ReConcurso(yr), mdzatual)
                              If vmaux_ADC > 0 Then
                                   mqtdeacertos = mqtdeacertos + 1
                              End If


                         Next

não é por nada a demora, desse modo só em mil anos mesmo

vou tentar enxugar o processo e depois te mando a macro


 

 

 

Como eu disse

1.) Esta é a primeira versão, mas embora eu já fiz e continue fazendo alterações

    esta lógica continua...

2.) A idéia é que a rotina final permita que seja variável:

    2.1) O Range a analisar

    2.2) A Quantidade de LINHAS da Matriz à gerar (Exemplos: 2, 3, 4, 5,... LINHAS)

    2.3) A posição de cada dezena (Exemplo: 13 25 01 10 02 20 12 21 11 22 03 04 05 06 07)

 

Link to comment
Share on other sites

Guest Zangado
4 minutos atrás, dois disse:

 

 

Como eu disse

1.) Esta é a primeira versão, mas embora eu já fiz e continue fazendo alterações

    esta lógica continua...

2.) A idéia é que a rotina final permita que seja variável:

    2.1) O Range a analisar

    2.2) A Quantidade de LINHAS da Matriz à gerar (Exemplos: 2, 3, 4, 5,... LINHAS)

    2.3) A posição de cada dezena (Exemplo: 13 25 01 10 02 20 12 21 11 22 03 04 05 06 07)

 

tudo que eu faço é de modo dinamico , apesar que nesse caso estou mais focado em entender

sobre posição das dezenas acho meio dificil já que o gerador de sequencia é d modo linear , e inclusive os resultados estão em ordem crescente

Link to comment
Share on other sites

8 minutos atrás, edcronos2 disse:

tudo que eu faço é de modo dinamico , apesar que nesse caso estou mais focado em entender

sobre posição das dezenas acho meio dificil já que o gerador de sequencia é d modo linear , e inclusive os resultados estão em ordem crescente

 

 

Correto !!!

O resultado sim, mas é importante que as dezenas nas LINHAS de uma Matriz que seja analisada

NÃO sofram alteração na sua ORDEM.

 

Imagine que eu queira melhorar uma determinada Matriz cujas dezenas

não estejam com suas dezenas em ordem crescente...

é importante que SE aprovada(s) a(s) LINHA(s) sejam gravadas

com a ORDEM de suas dezenas preservadas.

 

Ou seja, a finalidade é ler, analisar e gravar

SEM MODIFICAR O QUE FOR LIDO!!!

 

Link to comment
Share on other sites

Guest Zangado
5 minutos atrás, edcronos2 disse:

    2.1) O Range a analisar

isso aqui resolve

     sortini = 1 ' ----sorteio inicial
     sortT = 10 '-----quantidade de sorteios

     zLF_ReConcurso = Range("C" & sortini + 2, "Q" & sortT + 2).Value2

 

1 minuto atrás, dois disse:

 

 

Correto !!!

O resultado sim, mas é importante que as dezenas nas LINHAS de uma Matriz que seja analisada

NÃO sofram alteração na sua ORDEM.

 

Imagine que eu queira melhorar uma determinada Matriz cujas dezenas

não estejam com suas dezenas em ordem crescente...

é importante que SE aprovada(s) a(s) LINHA(s) sejam gravadas

com a ORDEM de suas dezenas preservadas.

 

vai fazer igual ao resultado, mesmo se estiver na ordem d sorteio não altera a logica, vai continuar comparando dz contra dz , no caso se existe a dezena de A no conjunto B

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...