Obter o número de casas decimais de quaisquer números (não apenas citações) contornando Dígitos() em MQL4 e MQL5 - página 7
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
com base em um artigo sobre os centros:https://habr.com/company/xakep/blog/257897/
não foi realmente testado, mas parece funcionar
com base em um artigo sobre os centros:https://habr.com/company/xakep/blog/257897/
não foi realmente testado, mas parece funcionar
Se der o resultado correto de 0,07, então ele funciona corretamente.
Se der o resultado correto de 0,07, então ele funciona corretamente.
não funciona ((((
não funciona ((((
E nenhum algoritmo funcionará...
E nenhum algoritmo funcionará...
será, mas o problema está na precisão dada e na conveniência de grandes custos computacionais, o número de dupla precisão pode ser recalculado em qualquer formato:±sign - (1+mantissa/252) × 2 pedido- 1023
É fácil extrair a mantissa e o pedido, mas não é interessante resolver este problema diretamente.
será, mas o problema está na precisão dada e na conveniência de grandes custos computacionais, o número de dupla precisão pode ser recalculado em qualquer formato:±sign - (1+mantissa/252) × 2 pedido- 1023
É fácil isolar a mantissa e o pedido, mas não é interessante resolver este problema de frente
Se a precisão for dada, então tudo isto não faz sentido. Eu já dei um exemplo, 0,07 tem duas casas decimais. Mas se você tentar calcular o número de dígitos de forma programática, você receberá treze. E 0,07 não é o resultado de cálculos, mas é inserido manualmente, nem mesmo através de uma variável.
Há também esta opção:
Recupere seus sentidos. Isso é um absurdo que nem deveria ser discutido seriamente.
O autor simplesmente tem um total equívoco sobre o funcionamento interno de variáveis duplas.
О!
Eu não disse que sabia tudo, é melhor me dizer o que estava errado ou me mostrar sua versão
Você quer saber quantas casas decimais cada variável do tipo duplo é definida em seu programa. Este é o absurdo. Todas as variáveis do tipo duplo têm a mesma representação. Eles são representados como Float - ponto flutuante. Às vezes a questão é para a esquerda, às vezes para a direita - depende do valor do número. Um milhão e um milionésimo estão representados com precisão diferente.
Existe também uma variante desse tipo:
Não, não vai funcionar, eu fiz isso ontem via conversão de tipo, aqui está o roteiro, seu exemplo e o meu:
resultados:
2018.11.13 01:49:16.131 tst (EURUSD,M30) 1. DoubleToDigits() = 11
2018.11.13 01:49:16.131 tst (EURUSD,M30) 1. Dígito() = 0
2018.11.13 01:49:16.131 tst (EURUSD,M30) 2. DoubleToDigits() = 3
2018.11.13 01:49:16.131 tst (EURUSD,M30) 2. Dígito() = 3
você pode ir ao GoogleFP-Printing-PLDI96.pdf, mas duvido que alguém faça tudo de acordo com o algoritmo