除法余数(模运算)

为了进行有余数的整数除法,MQL5 提供了内置模数运算符 '%',该运算符在 算术运算章节中介绍。然而,该运算符不适用于实数。如果操作数除数和/或被除数均为实数,则应使用函数 MathMod(或者简短形式为 fmod)。

double MathMod(double dividend, double divider) ≡ double fmod(double dividend, double divider)

该函数返回传递的第一个数字(dividend)除以传递的第二个数字 (divider) 的实数余数。

如果任何自变量为负,则结果符号由上面 章节中介绍的规则确定。

该函数的工作示例在 MathMod.mq5 脚本中提供。

   PRT(MathMod(10.03));     // 1.0
   PRT(MathMod(10.03.5));   // 3.0
   PRT(MathMod(10.03.49));  // 3.02
   PRT(MathMod(10.0M_PI));  // 0.5752220392306207
   PRT(MathMod(10.0, -1.5));  // 1.0, the sign is gone
   PRT(MathMod(-10.0, -1.5)); // -1.0