Características da linguagem mql5, subtilezas e técnicas - página 116
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
(cansado) se esse fosse o problema, o erro "'k' - redefinição; modificadores de tipo diferente" apareceria, mas não está na imagem do ecrã. Portanto, o compilador não se importa e não é esse o problema.
Ora bem, ora bem...
Ora bem, ora bem...
Bem, tente compilá-lo você mesmo. Se não for demasiado preguiçoso para escrever mensagens sobre este tópico no fórum, deve ser demasiado preguiçoso para o colocar num editor e carregar em F7. É muito mais rápido.
Forma rápida de calcular o logaritmo binário de um número inteiro. Funciona 3-5 vezes mais rápido do que o MathLog.
Forma rápida de calcular o logaritmo binário de um número inteiro. Funciona 3-5 vezes mais rápido do que o MathLog.
Eu uso uma função como esta (puro xamanismo, mas funciona):
Ambas as funções dão a mesma resposta correcta, não encontrei erros.
É interessante comparar a velocidade de operação. A minha versão tem um pouco menos de operações de mudança e adição, mas há multiplicação no final. A versão de Alexey tem um pouco mais de operações de mudança e adição, mas não há multiplicação. Como é mais rápido?
A minha versão tem um pouco menos de operações de turno e de adição, mas não de multiplicação. A versão de Alexey tem um pouco mais de operações de turno e de adição, mas não de multiplicação. Como é mais rápido?
Tenho um máximo de 6 operações de turno e adição (pesquisa binária). Oturno (ulong)1<<k não conta, porque é uma constante. A única coisa é que também verificamos a condição. Mas há sempre 6 operações, mais a multiplicação, mais um turno e acesso à matriz gerida (isto é, verificação do índice). Assim, a sua versão será obviamente mais lenta por velocidade :).
E a sua versão, claro, parece misteriosa).
p.s. Tenho uma suposição, que se o meu código pudesse ser desembrulhado numa cadeia de comparações via if-else, livrando-se de todas as operações aritméticas, aceleraria tremendamente as coisas. Mas seria uma grande confusão de código. Se ao menos se pudesse usar a recorrência em macros...
É interessante comparar a velocidade.
A variante log2 é mais rápida.
Assim, a opção log2 é mais rápida.
Já está.
Substituição da minha função.