MathFloor

函数返回下面最接近的整数值。

double  MathFloor(
   double  val     // 数字
   );

参量

val

[in]  数值。

返回值

数字值代表最大整数少于或者等于val。

注释

取代MathFloor()可以使用 floor()。

 

示例:

#define VALUES_TOTAL 31
 
//+------------------------------------------------------------------+
//| 脚本程序起始函数                                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- 声明转换变量
   double value=0;                     //用于MathFloor转换的实数
   int    floor_value=0;               // 在这里获得结果
//--- 按实数的十进制增量数进行循环
   for(int i=0i<VALUES_TOTALi++)
     {
      //--- 增加数值,
      //--- 从下面获取最接近的整数值
      //--- 并在日志中显示控件值
      value+=0.1;
      floor_value=(int)MathFloor(NormalizeDouble(value,1));
      PrintFormat("value: %.1f, floor value: %d",value,floor_value);
      /*
      result:
      value0.1floor value0
      value0.2floor value0
      value0.3floor value0
      value0.4floor value0
      value0.5floor value0
      value0.6floor value0
      value0.7floor value0
      value0.8floor value0
      value0.9floor value0
      value1.0floor value1
      value1.1floor value1
      value1.2floor value1
      value1.3floor value1
      value1.4floor value1
      value1.5floor value1
      value1.6floor value1
      value1.7floor value1
      value1.8floor value1
      value1.9floor value1
      value2.0floor value2
      value2.1floor value2
      value2.2floor value2
      value2.3floor value2
      value2.4floor value2
      value2.5floor value2
      value2.6floor value2
      value2.7floor value2
      value2.8floor value2
      value2.9floor value2
      value3.0floor value3
      value3.1floor value3
      */
     }