C#의 MathF.Cos() 메서드는 지정된 float(단정도 부동 소수점) 값에 대한 코사인(cosine) 값을 반환합니다. 삼각함수 계산이 필요한 그래픽 처리, 물리 시뮬레이션 등 다양한 분야에서 활용됩니다.
문법(Syntax)
MathF.Cos() 메서드의 기본 문법은 다음과 같습니다.
public static float Cos(float val);
매개변수 val은 코사인 값을 구하고자 하는 라디안(radian) 단위의 부동 소수점 값입니다.
예제 1: 70도의 코사인 값 구하기
MathF.Cos() 메서드는 라디안 단위의 값을 받기 때문에, 각도를 라디안으로 변환한 후 사용해야 합니다. 아래 예제는 70도를 라디안으로 변환하여 코사인 값을 계산합니다.
using System;
class Demo {
public static void Main() {
float val1 = 70f;
float res = (val1 * (MathF.PI)) / 180;
Console.WriteLine(MathF.Cos(res));
}
}출력 결과
0.34202
70도의 코사인 값은 약 0.34202로 출력됩니다.
예제 2: 90도의 코사인 값 구하기
이번에는 90도를 라디안으로 변환하여 코사인 값을 계산해 보겠습니다.
using System;
class Demo {
public static void Main() {
float val1 = 90f;
float res = (val1 * (MathF.PI)) / 180;
Console.WriteLine(MathF.Cos(res));
}
}출력 결과
-4.371139E-08
수학적으로 90도의 코사인 값은 정확히 0이지만, 부동 소수점 연산의 특성상 매우 작은 오차가 발생하여 -4.371139E-08(약 -0.0000000437)이 출력됩니다. 이는 float 자료형의 정밀도 한계로 인한 자연스러운 결과입니다.
핵심 정리
- MathF.Cos()는 float 형식의 라디안 값을 입력받아 해당 각도의 코사인 값을 float로 반환합니다.
- 각도(degree)를 사용하려면
(각도 × MathF.PI) / 180공식으로 라디안으로 변환해야 합니다. - float 자료형의 정밀도 한계로 인해 이론상 0이어야 하는 값에서도 미세한 오차가 나타날 수 있습니다.