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

C# Math.Exp() 메서드 완벽 가이드: 자연상수 e의 거듭제곱 계산하기

C#의 Math.Exp() 메서드는 자연상수 e(약 2.71828)를 지정된 거듭제곱만큼 올린 값을 반환하는 수학 함수입니다. 즉, e^val 형태의 결과를 계산할 때 사용되며, 지수 함수(exponential function)가 필요한 다양한 과학·공학 계산에서 활용됩니다.

문법(Syntax)

public static double Exp(double val);

여기서 매개변수 val은 지수(거듭제곱)를 의미하며, 메서드는 double 타입의 결과값을 반환합니다.

특수 값 처리 규칙

Math.Exp() 메서드는 특수한 입력값에 대해 다음과 같이 동작합니다.

  • val이 NaN(Not a Number)인 경우 → NaN을 그대로 반환합니다.
  • val이 PositiveInfinity(양의 무한대)인 경우 → PositiveInfinity를 반환합니다.
  • val이 NegativeInfinity(음의 무한대)인 경우 → 0을 반환합니다.

예제 1: 기본 동작 확인

다음 예제는 Math.Exp() 메서드의 특수 값 처리를 확인하는 코드입니다.

using System;
public class Demo {
    public static void Main(){
        Console.WriteLine(Math.Exp(0.0));
        Console.WriteLine(Math.Exp(Double.PositiveInfinity));
        Console.WriteLine(Math.Exp(Double.NegativeInfinity));
    }
}

출력 결과

1
∞
0

e의 0제곱은 항상 1이므로 첫 번째 출력은 1입니다. 양의 무한대를 지수로 넣으면 무한대(∞)가, 음의 무한대를 넣으면 0이 출력되는 것을 확인할 수 있습니다.

예제 2: 일반 값과 NaN 처리

using System;
public class Demo {
    public static void Main(){
        Console.WriteLine(Math.Exp(10.0));
        Console.WriteLine(Math.Exp(Double.NaN));
    }
}

출력 결과

22026.4657948067
NaN

e의 10제곱은 약 22026.47이며, NaN을 입력하면 역시 NaN이 반환됩니다.

참고 사항

Math.Exp()는 Math.Log()의 역함수 관계에 있으므로, 로그 계산 후 원래 값으로 되돌릴 때 유용하게 사용됩니다. 또한 복리 계산, 인구 성장 모델, 방사성 붕괴 등 지수적 변화를 다루는 프로그램에서 폭넓게 활용됩니다. 결과값은 double 타입으로 반환되므로, 매우 큰 지수를 입력하면 오버플로우가 발생할 수 있다는 점도 유의해야 합니다.