向MQL4大师们提问。还是关于双倍比较。 - 页 11

 

它并没有被悄悄地禁止。但在两次警告后,相当公开地。这是一个适合严肃人士的体面论坛。如果你不能用你的母语(希望不是阿尔巴尼亚语)来表达你丰富的知识,那就毫无价值。

 

全部读完!

许多次!

不同的分支。

但我仍然没有看到一个总结。我想知道这个问题的具体细节和清晰度。

先生们,请你们,如果这不是一个无赖,请做一个最后的结论(关于这一点)------。

对所有的人,用户,失败者,假人,萨莫瓦 - 当比较双倍类型的数字时,我们使用以下方法。

stdlib, bool CompareDoubles(double number1,double number2);

如果(NormalizeDouble((a-b)>0,Digits)){...}

int ComparePrice(double a, double b)
{
a -= b。
b = 点/2。
如果(a>b)返回(1)。
如果(a < -b)返回(-1)。
返回(0)。
}

双A。
双b。
int factor = MathRound( MathPow(10, digits)); // digits是要比较的精度。
如果我们比较价格,这就是预定义的变量 Digits
...

如果(MathRound( (a - b * factor ) != 0)
{
...// a != b
}

如果(MathRound( (a - b) * factor ) == 0)
{
...// a == b
}

如果(MathRound( (a - b) * factor ) > 0)
{
...// a > b
}

如果(MathRound( (a - b) * factor ) < 0)
{
...// a < b
}

当比较精确度高达4-5位的双数时,你不必再详细说明。

问候,亚历山大。