Uma boa tarefa para o cérebro. Você pode tentar desta forma:
Resultado do teste para a dimensão 4. Se X elemento de matriz não for selecionado, use matriz[dígito] e fragmento para a dimensão 6:
Eu olhei para seu código, mas o que eu não entendo é que você não leu os dados da matriz original em nenhuma etapa. apenas o número de elementos nela contidos
Eu olhei seu código, mas o que eu não entendo é o seguinte - você não leu os dados do array original em nenhuma das etapas. você leu apenas o número de elementos nele contidos
Por que eu preciso dos dados da matriz original? Estou apenas sampleando os elementos da matriz de acordo com sua idéia. E cabe a você decidir o que fazer com os dados amostrados. Isto é se N[0]=3, se N[1]=2, se N[2]=1, se N[3]=0, usamos array[N[0]], array[N[1]], array[N[2]], array[N[3]] para análise posterior, e se N[0]=3, N[1]=2, N[2]<0, N[3]<0, então para análise posterior usamos apenas array[N[0]], array[N[1]] porque N[2]<0 e N[3]<0. Tentamos todas as combinações possíveis que não se repetem de acordo com seu posto (levando em conta que a numeração dessa matriz começa de 0 a ArraySize(array)-1):
if(NewComb){
// Получили новую комбинацию в массиве N размерностью k for(i=0;i<k;i++){// Перебираем массив N. Если N[i]<0 то элемент array[N[i]] не участвует в выборке.// Например, для размерности 4 если N[0]=3,N[1]=1,N[2}<0,N[3]<0 то это выборка array[3] и array[1]// если N[0]=3,N[1]=2,N[2]=1,N[3]=0 то это выборка array[3] и array[2] array[1] и array[0]if(N[i]>=0){// использовать как-то array[N[i]]}
}
}
Por que eu preciso dos dados da matriz original? Estou simplesmente sampleando elementos da matriz de acordo com sua idéia. E cabe a você decidir o que fazer com os dados amostrados. Isto é se N[0]=3, se N[1]=2, se N[2]=1, se N[3]=0, usamos array[N[0]], array[N[1]], array[N[2]], array[N[3]] para análise posterior, e se N[0]=3, N[1]=2, N[2]<0, N[3]<0, então para análise posterior usamos apenas array[N[0]], array[N[1]] porque N[2]<0 e N[3]<0. Enumeramos todas as combinações possíveis que não são repetidas de acordo com seu posto (levando em conta que a numeração da matriz começa de 0 a ArraySize(array)-1):
E então proceda de acordo com seu algoritmo:
Agora está claro (li os dados na próxima etapa, só não estou acostumado a trabalhar com códigos que não são meus). Muito obrigado!
Para seu exemplo, isso não faz nenhuma diferença, mas você tem que especificar o início e o fim da matriz de qualquer maneira.
O início faz diferença se o conjunto for grande. Por exemplo, se a condição for acionada como regra no final da matriz, é melhor começar no final. Este exemplo é típico de busca de ordem/posição. Claro que, se você fizer a busca primeiro neste caso, o programa chegará a este ponto de qualquer maneira, mas será preciso mais recursos.
Mais uma vez, obrigado! Agora tentamos otimizar o número de barras "verificáveis", mas os resultados na janela simplesmente não estão lá. Tentei começar a contar tanto do início quanto do fim, mas em vão.
Só queria entender porque minha versão não quer funcionar...
Dê uma olhada mais de perto em seu código
if (NormalizeDouble(High[i],Norm)&&NormalizeDouble(Low[i],Norm)<NormalizeDouble(iMA(NULL,0,PerMa,0,MetMa,AplPr,i),Norm)
||NormalizeDouble(High[i],Norm)&&NormalizeDouble(Low[i],Norm)>NormalizeDouble(iMA(NULL,0,PerMa,0,MetMa,AplPr,i),Norm))
Você está simplesmente comparando o primeiro termo com zero, ou seja, verdadeiro ou falso.
Uma boa tarefa para o cérebro. Você pode tentar desta forma:
Resultado do teste para a dimensão 4. Se X elemento de matriz não for selecionado, use matriz[dígito] e fragmento para a dimensão 6:
Eu olhei para seu código, mas o que eu não entendo é que você não leu os dados da matriz original em nenhuma etapa. apenas o número de elementos nela contidos
Eu olhei seu código, mas o que eu não entendo é o seguinte - você não leu os dados do array original em nenhuma das etapas. você leu apenas o número de elementos nele contidos
Por que eu preciso dos dados da matriz original? Estou apenas sampleando os elementos da matriz de acordo com sua idéia. E cabe a você decidir o que fazer com os dados amostrados. Isto é se N[0]=3, se N[1]=2, se N[2]=1, se N[3]=0, usamos array[N[0]], array[N[1]], array[N[2]], array[N[3]] para análise posterior, e se N[0]=3, N[1]=2, N[2]<0, N[3]<0, então para análise posterior usamos apenas array[N[0]], array[N[1]] porque N[2]<0 e N[3]<0. Tentamos todas as combinações possíveis que não se repetem de acordo com seu posto (levando em conta que a numeração dessa matriz começa de 0 a ArraySize(array)-1):
E depois aja de acordo com seu algoritmo:
Por que eu preciso dos dados da matriz original? Estou simplesmente sampleando elementos da matriz de acordo com sua idéia. E cabe a você decidir o que fazer com os dados amostrados. Isto é se N[0]=3, se N[1]=2, se N[2]=1, se N[3]=0, usamos array[N[0]], array[N[1]], array[N[2]], array[N[3]] para análise posterior, e se N[0]=3, N[1]=2, N[2]<0, N[3]<0, então para análise posterior usamos apenas array[N[0]], array[N[1]] porque N[2]<0 e N[3]<0. Enumeramos todas as combinações possíveis que não são repetidas de acordo com seu posto (levando em conta que a numeração da matriz começa de 0 a ArraySize(array)-1):
E então proceda de acordo com seu algoritmo:
Agora está claro (li os dados na próxima etapa, só não estou acostumado a trabalhar com códigos que não são meus).
Muito obrigado!
Ajude-me a encontrar um erro na função.
O problema é que se você contar as barras acima do MA, a função retorna o valor correto.
Mas se estiver abaixo do MA, a função sempre retorna 1 (um)
Ajude-me a encontrar um erro na função.
O problema é que se você contar as barras acima do MA, a função retorna o valor correto.
Mas se estiver abaixo do MA, a função sempre retorna 1 (um)
Para seu exemplo, isso não faz nenhuma diferença, mas você tem que especificar o início e o fim da matriz de qualquer maneira.
O início faz diferença se o conjunto for grande. Por exemplo, se a condição for acionada como regra no final da matriz, é melhor começar no final. Este exemplo é típico de busca de ordem/posição. Claro que, se você fizer a busca primeiro neste caso, o programa chegará a este ponto de qualquer maneira, mas será preciso mais recursos.Mais uma vez, obrigado! Agora tentamos otimizar o número de barras "verificáveis", mas os resultados na janela simplesmente não estão lá. Tentei começar a contar tanto do início quanto do fim, mas em vão.
À primeira vista isto é melhor, embora o código pudesse ser significativamente otimizado:
Isto funciona... Obrigado!
Só preciso entender porque minha versão não quer funcionar...
Funciona assim... Obrigado!
Só queria entender porque minha versão não quer funcionar...
Você está simplesmente comparando o primeiro termo com zero, ou seja, verdadeiro ou falso.Dê uma olhada mais de perto em seu código
Funciona... Obrigado!
Só queria entender porque minha versão não quer funcionar...
Seu código:
Talvez seja mais fácil de entender...
Oops... já foi dito, você pode fazer isso sem normalização...
Você simplesmente compara o primeiro termo com zero, ou seja, verdadeiro ou falso.Dê uma olhada mais de perto em seu código
Então a expressão "se a e c são maiores que c" não é correta, mas "se a é maior que c e c é maior que c" é correta?