É possível obter um valor "exato"? - página 4 1234567 Novo comentário [Excluído] 2014.10.04 11:02 #31 sanyooooook: a que função você se refere?Primeiro através da linha ou NL?Função NL.Em caso afirmativo:NL (2, 0.09 * 5); // 0.44Ele dá 0,44 ao invés de 0,45. Alexandr Bryzgalov 2014.10.04 11:13 #32 WePlexus: Função NL.Em caso afirmativo:Ele dá 0,44 ao invés de 0,45. Print(NL(DIGITS,0.45)); 2014.10.04 13:13:03.089 normalize EURUSD,H4: 0.45 Alexandr Bryzgalov 2014.10.04 11:21 #33 WePlexus:Função NL.Em caso afirmativo:Ele dá 0,44 ao invés de 0,45.Isto é porque: MathFloor(valor/etapa)=44A entrada é 44.999999999999999999, esta função retorna o número inteiro mais próximo da base.porque: valor/etapa(0.45/0.01)=44.999999999999999999 não é minha pergunta ) [Excluído] 2014.10.04 11:26 #34 sanyooooook: é pelo fato de que: MathFloor(valor/etapa)=44O valor de entrada é 44,999999999999999999. Esta função retorna o inteiro mais próximo da base.porque: valor/etapa(0,45*100)=44,999999999999999999 não é minha pergunta). Obrigado. :) Alexandr Bryzgalov 2014.10.04 11:27 #35 WePlexus: Obrigado. :) corrigiu o erro no posto Alexandr Bryzgalov 2014.10.04 11:28 #36 WePlexus: Obrigado. :)Portanto, sua função é mais correta )A propósito, neste caso todas as funções, exceto a minha, dão 0,45 )) Alexandr Bryzgalov 2014.10.04 11:30 #37 significa que antes de usar uma função, os dados de entrada devem ser verificados e dependendo de qual número você escolher uma ou outra função) Andrey F. Zelinsky 2014.10.04 11:31 #38 sanyooooook: para que sua função seja mais correta )a propósito, neste caso, todas as funções, exceto a minha, dão 0,45 ))bem, sanyok, você é um mentiroso.minha função://double d=0.019999999999999999; double d=0.09*5; double e=(int)(d*100)/100.0; Print("e=",e); =0.44 [Excluído] 2014.10.04 11:34 #39 abolk: minha função é =0,44. Sim, mas a calculadora diz 0,09*5=0,45. :) Andrey F. Zelinsky 2014.10.04 11:35 #40 WePlexus: Certo, e o resultado na calculadora é 0,45. :)Certo, eu não estava prestando atenção no início. 1234567 Novo comentário
a que função você se refere?
Primeiro através da linha ou NL?
Função NL.
Em caso afirmativo:
Ele dá 0,44 ao invés de 0,45.
Função NL.
Em caso afirmativo:
Ele dá 0,44 ao invés de 0,45.
Função NL.
Em caso afirmativo:
Ele dá 0,44 ao invés de 0,45.
Isto é porque: MathFloor(valor/etapa)=44
A entrada é 44.999999999999999999, esta função retorna o número inteiro mais próximo da base.
porque: valor/etapa(0.45/0.01)=44.999999999999999999 não é minha pergunta )
é pelo fato de que: MathFloor(valor/etapa)=44
O valor de entrada é 44,999999999999999999. Esta função retorna o inteiro mais próximo da base.
porque: valor/etapa(0,45*100)=44,999999999999999999 não é minha pergunta).
Obrigado. :)
Obrigado. :)
Portanto, sua função é mais correta )
A propósito, neste caso todas as funções, exceto a minha, dão 0,45 ))
para que sua função seja mais correta )
a propósito, neste caso, todas as funções, exceto a minha, dão 0,45 ))
bem, sanyok, você é um mentiroso.
minha função:
=0.44minha função
é =0,44.Certo, e o resultado na calculadora é 0,45. :)
Certo, eu não estava prestando atenção no início.