본문 바로가기

hayee Study/코딩_c#

[C#] 소수점 자르기 Math.Truncate

반응형

 

안녕하세요 hayee 입니다.

 

통신으로 데이터를 주고 받을 때 소수점이 중요한 값들이 있습니다. 이럴 때 저는 아래와 같이 사용하고 있습니다.


소스 코드 (예시1)

// 버튼 클릭 이벤트
private void button1_Click(object sender, EventArgs e)
{
    double val = 59.99999;
    string sValue = string.Format("{0}", val.ToString("F2"));

    // 결과 >> sValue = "60.00"
}

 

- 지정된 형식을 사용해서 문자열을 출력할 수 있습니다. 그러나 값이 반올림이 되어서 "59.99" 가 아닌 "60.00" 으로 출력이 됩니다.

 

 

소스 코드 (예시2)

// 버튼 클릭 이벤트
private void button1_Click(object sender, EventArgs e)
{
    double value = 59.99999;
    double result;

    result = Math.Truncate(value * 100) / 100;

    string sValue = result.ToString();
    
    // 결과 >> sValue = "59.99"
}

 

- Math.Truncate 메서드를 사용하여 정수 부분을 제외한 소수점 부분을 잘라버립니다. 위의 예제는 소수점 둘째 자리로 표시하기 위해 100을 곱한 다음 소수점을 전부 잘라버린 뒤 소수점 표시를 위해 100으로 나누었습니다.

 

 

 

# 틀린 부분이 있다면 댓글 부탁드립니다. #
# 댓글 달아주시면 늦게라도 블로그 방문하도록 할게요! 감사합니다. #

 

 

 

728x90
반응형