MathFloor

Gibt den ganzzahligen Wert zurück, der der nächste von unten ist.

double  MathFloor(
   double  val     // Zahl
   );

Parameter

val

[in]  Numerischer Wert.

Rückgabewert

Der numerische Wert, der die größte ganze Zahl darstellt, die kleiner oder gleich val ist.

Hinweis

Statt der Funktion MathFloor() kann die Funktion floor() verwendet werden.

 

Beispiel:

#define VALUES_TOTAL 31
 
//+------------------------------------------------------------------+
//| Skript Programm Start Funktion                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- Variablen für die Umwandlung deklarieren
   double value=0;                     // reelle Zahl für MathFloor
   int    floor_value=0;               // Ergebnis des Funktionsaufrufs
//--- in einer Schleife über die Anzahl der Dezimalschritte einer reellen Zahl
   for(int i=0i<VALUES_TOTALi++)
     {
      //--- erhöhe den Zahlenwert,
      //--- ermittle die nächstgelegenen, ganzzahligen Wert von unten
      //--- und drucke die Kontrollwerte ins Journal
      value+=0.1;
      floor_value=(int)MathFloor(NormalizeDouble(value,1));
      PrintFormat("value: %.1f, floor value: %d",value,floor_value);
      /*
     Ergebnis:
      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
      */
     }