NormalizeDouble을 사용하여 MT4에서 숫자 반올림

 

안녕하세요. 무슨 일인지 말해봐

NormalizeDouble(0.055,2) 함수 가 숫자 "0.055"를 "0.06"으로 반올림하는 이유는 무엇입니까?

이것은 분수를 반올림하는 기능이 아닙니다.

 

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

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

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

주제에 계속됩니다. 스크립트가 있습니다

 #property strict

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

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

결과: v1 = 0.06000000, v2 = 0.05000000이지만 두 경우 모두 0.06000000이어야 합니다.

 
Maxim Khrolenko :

주제에 계속됩니다. 스크립트가 있습니다

결과: v1 = 0.06000000, v2 = 0.05000000이지만 두 경우 모두 0.06000000이어야 합니다.

반올림 - Wikipedia.

 
Roman Starinskij :

안녕하세요. 무슨 일인지 말해봐

NormalizeDouble(0.055,2) 함수 가 숫자 "0.055"를 "0.06"으로 반올림하는 이유는 무엇입니까?

이것은 분수를 반올림하는 기능이 아닙니다.

결과는 어떠해야 한다고 생각하십니까?
 
Maxim Khrolenko :

주제에 계속됩니다. 스크립트가 있습니다

결과: v1 = 0.06000000, v2 = 0.05000000이지만 두 경우 모두 0.06000000이어야 합니다.

무슨 공포에서?
 
Maxim Khrolenko :

주제에 계속됩니다. 스크립트가 있습니다

결과: v1 = 0.06000000, v2 = 0.05000000이지만 두 경우 모두 0.06000000이어야 합니다.

오 와우....

v1=v2=0.06이어야 합니다.

확인도 안해봤어... 그렇게 지저분해?

MT5 또는 MT4가 있습니까?

 
new-rena :

오 와우....

v1=v2=0.06이어야 합니다.

확인도 안해봤어.. 그렇게 지저분해?

무슨 공포에서?
 
Dmitry Fedoseev :
무슨 공포에서?

나는 듀스를 위해 학교에서 공부했지만 올바르게 반올림하는 방법을 기억했습니다 ...

맨 오른쪽 숫자가 5보다 크거나 같으면 왼쪽 다음 숫자는 +1입니다. 등. 오른쪽에서 왼쪽으로 이동

 
new-rena :
나는 듀스를 위해 학교에서 공부했지만 그것을 기억했습니다 ...

나는 이것이 어떤 종류의 학교인지 궁금합니다 ... 당신의 사고 방식을 말하십시오. 그런 다음 나는 환상이 전혀 없습니다. 어떻게 쐐기를 박을 수 있습니까?

 
Maxim Khrolenko :

주제에 계속됩니다. 스크립트가 있습니다

결과: v1 = 0.06000000, v2 = 0.05000000이지만 두 경우 모두 0.06000000이어야 합니다.

그리고 소수점 이하 3자를 정규화합니다.
사유: