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

C# Math.Log() 메서드 완벽 정리: 사용법과 예제 코드

C#의 Math.Log() 메서드는 지정된 숫자의 로그(로그arithm) 값을 계산하여 반환하는 메서드입니다. 자연로그뿐만 아니라 원하는 밑(base)을 지정한 로그 계산도 가능합니다.

문법(Syntax)

public static double Log(double num)
public static double Log(double num, double base)

위 문법에서 num은 로그를 계산할 대상 숫자이며, 두 번째 오버로드에서 base는 로그의 밑을 의미합니다. 첫 번째 형태는 밑이 e(자연상수)인 자연로그를 반환하고, 두 번째 형태는 지정한 밑에 대한 로그 값을 반환합니다.

그럼 Math.Log() 메서드를 실제로 구현한 예제를 살펴보겠습니다.

예제 1: 양수와 음수 입력

using System;
public class Demo {
   public static void Main(){
      double val1 = 2.15;
      double val2 = -2.15;
      Console.WriteLine(Math.Log(val1));
      Console.WriteLine(Math.Log(val2));
   }
}

출력 결과

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

0.765467842139571
NaN

양수 2.15의 경우 정상적으로 자연로그 값이 계산되지만, 음수인 -2.15는 로그를 정의할 수 없기 때문에 NaN(Not a Number)이 반환됩니다. 이처럼 Math.Log() 메서드는 음수나 0을 입력하면 NaN을 반환한다는 점을 기억해야 합니다.

예제 2: 무한대 값 입력

이번에는 무한대 값을 입력했을 때의 동작을 확인해 보겠습니다.

using System;
public class Demo {
   public static void Main(){
      double val1 = Double.PositiveInfinity;
      double val2 = Double.NegativeInfinity;
      Console.WriteLine(Math.Log(val1));
      Console.WriteLine(Math.Log(val2));
   }
}

출력 결과

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

∞
NaN

양의 무한대(∞)를 입력하면 결과 역시 양의 무한대가 반환되고, 음의 무한대를 입력하면 유효하지 않은 값이라는 의미로 NaN이 반환됩니다.

정리

Math.Log() 메서드는 과학 계산, 데이터 분석, 알고리즘 구현 등 다양한 분야에서 활용되는 기본적인 수학 함수입니다. 사용 시에는 다음 사항을 유의하세요.

  • 음수 또는 0을 입력하면 NaN이 반환됩니다.
  • 양의 무한대를 입력하면 양의 무한대가 반환됩니다.
  • 밑을 직접 지정하려면 두 번째 오버로드 Log(double num, double base)를 사용합니다.