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=0; i<VALUES_TOTAL; i++)
     {
      //--- 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:
      value: 0.1, floor value: 0
      value: 0.2, floor value: 0
      value: 0.3, floor value: 0
      value: 0.4, floor value: 0
      value: 0.5, floor value: 0
      value: 0.6, floor value: 0
      value: 0.7, floor value: 0
      value: 0.8, floor value: 0
      value: 0.9, floor value: 0
      value: 1.0, floor value: 1
      value: 1.1, floor value: 1
      value: 1.2, floor value: 1
      value: 1.3, floor value: 1
      value: 1.4, floor value: 1
      value: 1.5, floor value: 1
      value: 1.6, floor value: 1
      value: 1.7, floor value: 1
      value: 1.8, floor value: 1
      value: 1.9, floor value: 1
      value: 2.0, floor value: 2
      value: 2.1, floor value: 2
      value: 2.2, floor value: 2
      value: 2.3, floor value: 2
      value: 2.4, floor value: 2
      value: 2.5, floor value: 2
      value: 2.6, floor value: 2
      value: 2.7, floor value: 2
      value: 2.8, floor value: 2
      value: 2.9, floor value: 2
      value: 3.0, floor value: 3
      value: 3.1, floor value: 3
      */
     }