소프트웨어/C# & ASP.NET

소수점이하 잘라 버리는 방법

falconer 2008. 10. 23. 19:46

수치 소수점 이하 값을 버리려면 Math클래스의 정적 메소드 Floor를 사용하고 반올림할 경우에는 Ceiling을 사용합니다. 즉, Floor는 마지막 수가 작은 값이면 잘라버리고 Ceiling은 보다 큰 값이면 반올림한다는 것입니다.

사용방법은 아래와 같습니다.

   Math.Floor(Decimal)
   Math.Ceiling(Decimal)

파라미터에 Decimal형을 사용하는데 이는 .NET Framework 2.0이후부터 지원하게 되었고 Double형도 사용할 수 있습니다.

using System;
using System.Collections.Generic;
using System.Text;

namespace Math1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Math메소드로 소수점 처리 방법");
            decimal pf = Math.Floor(1.7m);
            Console.WriteLine(pf);

            decimal pc = Math.Ceiling(1.7m);
            Console.WriteLine(pc);
        }
    }
}


<결과>
Math메소드로 소수점 처리 방법
1
2

[참고] 소수점 2자리단위로 정리하고 싶은 경우

using System;
using System.Collections.Generic;
using System.Text;

namespace Math2
{
    class Program
    {
        static void Main(string[] args)
        {
            decimal v = 1.34m;

            v *= 10;
            Console.WriteLine("1.34m *= 10 = {0}", v);

            v = Math.Floor(v);
            v /= 10;
            Console.WriteLine("Result = {0}", v);
        }
    }
}



출처 : http://itcampus7770.tistory.com/entry/%EB%8B%B7%EB%84%B7CASP%EC%86%8C%EC%88%98%EC%A0%90%EC%9D%B4%ED%95%98-%EC%9E%98%EB%9D%BC-%EB%B2%84%EB%A6%AC%EB%8A%94-%EB%B0%A9%EB%B2%95