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 5
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
Você precisa de um
para que
o resultado foi: 4
Exatamente quatro? Vamos fazer isso.
Talvez seja exatamente essa a função que você precisa. Respondeu o TC
Ele precisa exatamente dessa função, porque (como você observou corretamente) nem todos os números podem ser representados exatamente como o dobro, o que significa que resolver o problema sem especificar a precisão não tem sentido (porque, no caso geral, leva a resultados absurdos).
Ele precisa exatamente disso, porque (como você observou corretamente) nem todos os números podem ser representados com precisão como um duplo, o que significa que resolver o problema sem especificar a precisão não tem sentido (porque em geral leva a resultados absurdos).
Quais são as opções para especificar a precisão sem alterar o número de casas decimais, ou como posso eliminar a desvantagem que descrevi em minha versão? Para mim, encontrei apenas (cordel) valor
Quais são as opções para especificar a precisão sem alterar o número de casas decimais, ou como posso eliminar a desvantagem que descrevi em minha versão? Para mim, encontrei apenas (cordel) valor
Acho que você quer dizer dentro de que limites procurar o último não-zero.
Eu tentei fazer um cálculo do número de casas decimais através de MathMod() com um divisor consecutivo 0,1, depois 0,01 ... 0,000(15 zeros) 1, não funcionou, a precisão do número mantém "flutuante" a necessidade de normalizar cada vez, e se você usar a normalização, então é mais fácil comparar o número que você quer e normalizado com que sinal - se diferente, então encontrei o último sinal
HH: há outra opção, não teve tempo de verificar - multiplique um número real sem uma parte inteira de 10 ^ 16 e salve tudo em um longo tempo, e então divida por 10 e verifique o restante da divisão, se = 0, então novamente divida
ZS: há outra opção, não tive tempo de verificar - multiplique um número real sem uma parte inteira por 10^16 e salve tudo em um longo tempo, e então divida por 10 e verifique o restante da divisão, se = 0, então divida novamente
Não vai funcionar.
Usepontoduplo()
Também testado, de jeito nenhum.
É isso aí.
dá este resultado
Também testado, não vai funcionar.