Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# Decimal.Divide() 메서드 완벽 정리 - 구문과 예제로 배우기

Decimal.Divide() 메서드란?

C#의 Decimal.Divide() 메서드는 지정된 두 개의 Decimal 값을 나누는 데 사용되는 정적(static) 메서드입니다. 높은 정밀도가 요구되는 금융 계산 등에서 부동소수점 오차 없이 안정적으로 나눗셈 연산을 수행할 때 유용하게 활용됩니다.

구문(Syntax)

Decimal.Divide() 메서드의 기본 구문은 다음과 같습니다.

public static decimal Divide (decimal val1, decimal val2);

여기서 val1은 피제수(나누어지는 값)이며, val2는 제수(나누는 값)입니다. 반환값은 두 Decimal 값을 나눈 결과인 decimal 타입입니다.

예제 1 - 서로 다른 값 나누기

먼저 Decimal.Divide() 메서드를 활용한 기본 예제를 살펴보겠습니다.

using System;
public class Demo {
   public static void Main(){
      Decimal val1 = 65.15m;
      Decimal val2 = 5.15m;
      Console.WriteLine("Decimal 1 = "+val1);
      Console.WriteLine("Decimal 2 = "+val2);
      Console.WriteLine("After Division = "+(Decimal.Divide(val1,val2)));
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Decimal 1 = 65.15
Decimal 2 = 5.15
After Division = 12.650485436893203883495145631

출력에서 볼 수 있듯이, decimal 타입은 매우 높은 정밀도(최대 28~29자리 유효 숫자)를 제공하기 때문에 소수점 이하 결과까지 상세하게 표현됩니다.

예제 2 - 동일한 값 나누기

이번에는 같은 값을 나누는 경우의 동작을 확인해 보겠습니다.

using System;
public class Demo {
   public static void Main(){
      Decimal val1 = 1.0m;
      Decimal val2 = 1.0m;
      Console.WriteLine("Decimal 1 = "+val1);
      Console.WriteLine("Decimal 2 = "+val2);
      Console.WriteLine("After Division = "+(Decimal.Divide(val1,val2)));
   }
}

출력 결과

실행 결과는 다음과 같습니다.

Decimal 1 = 1.0
Decimal 2 = 1.0
After Division = 1

사용 시 주의 사항

Decimal.Divide() 메서드를 사용할 때 제수(val2)가 0이면 DivideByZeroException이 발생합니다. 따라서 실무 코드에서는 나누기 전에 제수가 0인지 검사하거나 try-catch 블록으로 예외를 처리하는 것이 좋습니다.