본문 바로가기
Language/C#

[C#] 실수에서 정수형 변환

by 종승 2023. 7. 14.

실수값을 정수값으로 바꾸고 싶을 때 주로 아래와 같이 변환했다.

double a = 12.34;
int b = Convert.ToInt32(a);

 

그런데, 이렇게 변환하면 정수 부분만을 가져오는 것이 아니라 값을 반올림해서 처리하는 것 같다.

반올림, 올림, 내림을 하는 방법은 아래와 같다.

// 반올림 Math.Round
double a = 4.3;
int b = Convert.ToInt32(Math.Round(a));
// b = 4;

// 올림 Math.Ceiling
double a = 4.3;
int b = Convert.ToInt32(Math.Ceiling(a));
// b = 5;

// 내림 Math.Truncate
double a = 4.3;
int b = Convert.ToInt32(Math.Truncate(a));
// b = 4;