C#의 Math.Sqrt() 메서드는 지정된 숫자의 제곱근을 계산하는 데 사용되는 정적 메서드입니다. 이 메서드는 System 네임스페이스의 Math 클래스에 포함되어 있어 별도의 인스턴스 생성 없이 바로 호출할 수 있습니다.
문법(Syntax)
Math.Sqrt() 메서드의 기본 문법은 다음과 같습니다.
public static double Sqrt(double val);
여기서 매개변수 val은 제곱근을 구하고자 하는 숫자를 의미합니다. 반환값은 해당 숫자의 제곱근이며, 항상 double 형식으로 반환됩니다.
주요 특징
- 음수를 입력하면 결과로 NaN(Not a Number)을 반환합니다.
- 양의 무한대(
PositiveInfinity)를 입력하면 양의 무한대를 그대로 반환합니다. NaN을 입력하면NaN을 반환합니다.
예제 1: 양수의 제곱근 계산
다음은 Math.Sqrt() 메서드를 사용하여 양수의 제곱근을 구하는 기본적인 예제입니다.
using System;
public class Demo {
public static void Main(){
double val1 = 4;
double val2 = 36;
Console.WriteLine(Math.Sqrt(val1));
Console.WriteLine(Math.Sqrt(val2));
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
2 6
4의 제곱근은 2, 36의 제곱근은 6으로 정상적으로 계산된 것을 확인할 수 있습니다.
예제 2: 음수와 소수의 제곱근 계산
이번에는 음수와 소수를 입력했을 때의 동작을 살펴보겠습니다.
using System;
public class Demo {
public static void Main(){
double val1 = -144;
double val2 = 0.49;
Console.WriteLine(Math.Sqrt(val1));
Console.WriteLine(Math.Sqrt(val2));
}
}출력 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
NaN 0.7
음수인 -144의 경우 실수 범위에서 제곱근이 정의되지 않으므로 NaN이 반환됩니다. 반면 소수 0.49의 제곱근은 0.7로 정확하게 계산됩니다.
정리
Math.Sqrt() 메서드는 간단하지만 수학적 계산에서 자주 사용되는 핵심 함수입니다. 음수 입력 시 NaN이 반환된다는 점만 주의하면, 다양한 숫자 연산 상황에서 안전하게 활용할 수 있습니다. 만약 음수에 대한 제곱근(허수) 처리가 필요하다면 System.Numerics.Complex 구조체를 사용하는 방법도 고려해 볼 수 있습니다.