Rundung von Zahlen in MT4 über NormalizeDouble

 

Hallo. Können Sie mir sagen, was das Problem ist?

Warum rundet die Funktion NormalizeDouble(0.055,2) die Zahl "0.055" auf "0.06"?

Es handelt sich nicht um eine Rundungsfunktion für Brüche.

 

https://docs.mql4.com/ru/convert/normalizedouble

Округление числа с плавающей точкой до указанной точности.

NormalizeDouble - Документация на MQL4
  • docs.mql4.com
NormalizeDouble - Документация на MQL4
 

Um das Thema fortzusetzen. Es gibt ein Skript

#property strict

void OnStart()
  {
   double v1 = NormalizeDouble(0.055,2);
   double v2 = NormalizeDouble(0.0549,2);

   Print("v1 = ",DoubleToString(v1),", v2 = ",DoubleToString(v2));
  }

Ergebnis: v1 = 0,06000000, v2 = 0,05000000, während es in beiden Fällen 0,06000000 sein sollte.

 
Maxim Khrolenko:

Um das Thema fortzusetzen. Es gibt ein Skript

Ergebnis: v1 = 0,06000000, v2 = 0,05000000, während es in beiden Fällen 0,06000000 sein sollte.

Rundung - Wikipedia

 
Roman Starinskij:

Hallo. Können Sie mir sagen, was das Problem ist?

Warum rundet die Funktion NormalizeDouble(0.055,2) die Zahl "0.055" auf "0.06"?

Es handelt sich nicht um eine Rundungsfunktion für Brüche.

Wie sollte das Ergebnis Ihrer Meinung nach aussehen?
 
Maxim Khrolenko:

Um das Thema fortzusetzen. Es gibt ein Skript

Ergebnis: v1 = 0,06000000, v2 = 0,05000000, während es in beiden Fällen 0,06000000 sein sollte.

Warum eigentlich nicht?
 
Maxim Khrolenko:

Um das Thema fortzusetzen. Es gibt ein Skript

Das Ergebnis: v1 = 0,06000000, v2 = 0,05000000, während es in beiden Fällen 0,06000000 sein sollte.

Nun, vshchupeeeeeee....

Es sollte v1=v2=0,06 sein.

Ich habe es noch nie überprüft... Ist das wirklich so falsch?

Haben Sie MT5 oder MT4?

 
new-rena:

Nun, wow, wow, wow, wow, wow, wow, wow, wow, wow, wow, wow.

sollte v1=v2=0,06 sein.

Ich habe noch nie nachgesehen... Ist es wirklich so verkorkst?

Warum in aller Welt sollte sie das tun?
 
Dmitry Fedoseev:
Warum sollten Sie das tun?

Ich hatte eine Vier in der Schule, aber ich habe richtig gerundet...

Wenn die Zahl ganz rechts größer oder gleich 5 ist, dann ist die nächste Zahl links davon +1. Und so weiter, von rechts nach links.

 
new-rena:
Ich hatte in der Schule nur Fünfen, aber ich erinnere mich an das hier...

Interessant, was für eine Schule ist das... Sagen Sie mir, was Sie denken. Denn ich habe keine Ahnung, wie es so klischeehaft sein kann.

 
Maxim Khrolenko:

Um das Thema fortzusetzen. Es gibt ein Skript

Ergebnis: v1 = 0,06000000, v2 = 0,05000000, während es in beiden Fällen 0,06000000 sein sollte.

Und Sie haben 3 Zeichen nach dem Dezimalpunkt normalisiert