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

C# Math.Log10() 메서드 완벽 가이드 - 사용법과 예제 총정리

C#의 Math.Log10() 메서드는 지정된 숫자에 대한 밑수가 10인 로그값, 즉 상용로그(common logarithm)를 계산하여 double 형식으로 반환합니다. 수학적 계산이나 데이터 분석 작업에서 자주 활용되는 기본 메서드입니다.

구문(Syntax)

public static double Log10 (double val);

여기서 val은 로그값을 구하고자 하는 숫자를 의미합니다.

매개변수 값에 따른 반환값

Log10() 메서드는 입력된 매개변수 값에 따라 다음과 같은 결과를 반환합니다.

val 매개변수반환값
양수밑수 10 로그값, 즉 log₁₀d
0NegativeInfinity (음의 무한대)
음수NaN (숫자가 아님)
NaN과 같은 경우NaN
PositiveInfinity와 같은 경우PositiveInfinity (양의 무한대)

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

예제 1: 무한대 값 처리

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

출력 결과

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

∞
NaN

양의 무한대를 입력하면 양의 무한대가 그대로 반환되고, 음의 무한대는 유효한 로그 값을 가질 수 없으므로 NaN이 반환되는 것을 확인할 수 있습니다.

예제 2: 0, 1, NaN 값 처리

using System;
public class Demo {
    public static void Main(){
        double val1 = 0;
        double val2 = 1;
        double val3 = Double.NaN;
        Console.WriteLine(Math.Log10(val1));
        Console.WriteLine(Math.Log10(val2));
        Console.WriteLine(Math.Log10(val3));
    }
}

출력 결과

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

-∞
0
NaN

0을 입력하면 수학적으로 로그 함수가 발산하기 때문에 음의 무한대(-∞)가 반환됩니다. 1의 상용로그는 항상 0이며, NaN을 입력하면 역시 NaN이 반환됩니다.

정리

Math.Log10() 메서드는 간단하지만 입력값의 범위에 따라 반환 결과가 크게 달라지므로, 실제 개발 시에는 0 이하의 값이나 특수 부동소수점 값(NaN, Infinity)이 들어오는 경우를 반드시 고려해야 합니다. 이러한 특성을 미리 파악해 두면 런타임 오류나 예기치 않은 계산 결과를 효과적으로 방지할 수 있습니다.