Blog Content

    티스토리 뷰

    32.C# - Math.Round 메서드 사용 예제

    반응형
    값을 가장 가까운 정수나 지정된 소수 자릿수로 반올림 하는 예제입니다.
    using System;

    public class 반올림
    {
        public static void Main()
        {
            double d = 1234.5678;
            Console.WriteLine(Math.Round(d,2)); //1234.57
            Console.WriteLine();
            Console.WriteLine(MyRound(d, 2)); //1234.57
            Console.WriteLine();
            double temp = (int)((d + 0.005)*10)/100.0; //XXX.XX
            Console.WriteLine("{0}",temp);
           
        }   
       
        //정수형으로 자리수 포지션을 잡아서 반올림
        public static double MyRound(double num, int pos)
        {
            double result = 0.0;
            double half = 0.5;
            double factor = 1;

            for (int i = 0; i < pos; i++)
            {
                half *= 0.1;
                factor *= 10;
            }
                result = (int)((num+half)*factor) / (double)factor;
                return result;
        }
    }
    반응형

    Comments