■ Math 클래스를 사용해 실수를 올림/반올림/내림하는 방법을 보여준다.
▶ Math 클래스 : 실수 올림/반올림/내림하기 예제 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
using System; double value = 4.5343; double result1 = Round(value, 4, RoundType.Ceiling ); double result2 = Round(value, 4, RoundType.Round ); double result3 = Round(value, 4, RoundType.Truncate); Console.WriteLine($"값 : {value }"); Console.WriteLine($"올림 : {result1}"); Console.WriteLine($"반올림 : {result2}"); Console.WriteLine($"내림 : {result3}"); |
▶ Math 클래스 : 실수 올림/반올림/내림하기 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
using System; /// <summary> /// 반올림 타입 /// </summary> public enum RoundType { /// <summary> /// 올림 /// </summary> Ceiling, /// <summary> /// 반올림 /// </summary> Round, /// <summary> /// 내림 /// </summary> Truncate } #region 반올림하기 - Round(value, roundDigit, rountType) /// <summary> /// 반올림하기 /// </summary> /// <param name="value">값</param> /// <param name="roundDigit">반올림 자리수</param> /// <param name="rountType">반올림 타입</param> /// <returns>반올림 결과</returns> public double Round(double value, int roundDigit = 3, RoundType rountType = RoundType.Truncate) { double temporaryValue = Math.Pow(10, roundDigit) / 10; double resultValue = Math.Truncate(value * temporaryValue) / temporaryValue; switch(rountType) { case RoundType.Ceiling : resultValue = Math.Ceiling (value * temporaryValue) / temporaryValue; break; case RoundType.Round : resultValue = Math.Round (value * temporaryValue) / temporaryValue; break; case RoundType.Truncate : resultValue = Math.Truncate(value * temporaryValue) / temporaryValue; break; } return resultValue; } #endregion |