본문 바로가기

프로그래밍/Unity 3D

[Unity3D] 유니티 C#에서 반올림,올림,내림 사용하기 + 원하는 소수 자리수에서



//반올림
float a = Mathf.Round(3.5f); //4f
//올림
float b = Mathf.Ceil(3.5f); //4f
//내림
float c = Mathf.Floor(3.5f); //3f

//반올림
int A = Mathf.RoundToInt(3.5f); //4
//올림
int B = Mathf.CeilToInt(3.5f); //4
//내림
int C = Mathf.FloorToInt(3.5f); //3


위와 같이 반올림,올림,내림을 사용할 수 있는데

C#에서는 기본적으로 소숫점 첫째 자리에서 수행한다.


ToInt를 사용하면 Int형으로 반환한다.

사용하지 않으면 결과가 정수여도 float형을 반환한다.


만약 둘째 자리에서 반올림 하고 싶다면 아래와 같이 응용할 수 있다.


float a = Mathf.Round(3.56f*10) * 0.1f; //3.6f


35.6으로 바꿔준 뒤 첫째 자리에서 반올림해서 36으로 만든 후 다시 0.1을 곱해줘서 3.6이 되므로

둘째 자리에서 반올림한 것과 같아진다.