C 언어에서 수학과 관련된 다양한 함수들은 모두 math.h 헤더 파일에 선언되어 있습니다. 이 헤더 파일을 프로그램에 포함하면 삼각함수, 지수 함수, 제곱근 계산 등 수치 연산에 필요한 표준 라이브러리 함수를 자유롭게 사용할 수 있습니다.
이 글에서는 math.h에서 자주 사용되는 핵심 함수들의 역할, 문법, 그리고 실제 예제를 하나씩 자세히 살펴보겠습니다.
1. sin() – 사인 값 계산
sin() 함수는 인자로 전달된 값(라디안 단위)의 사인(sine) 값을 구하는 데 사용됩니다.
문법은 다음과 같습니다.
double sin(double a);
사용 예시입니다.
double a = sin(3.14 / 2);
실행 결과는 다음과 같습니다.
a = 1 (약)
2. cos() – 코사인 값 계산
cos() 함수는 인자의 코사인(cosine) 값을 반환합니다.
문법은 다음과 같습니다.
double cos(double a);
사용 예시입니다.
double a = cos(3.14 / 2);
실행 결과는 다음과 같습니다.
a = 0 (약)
3. tan() – 탄젠트 값 계산
tan() 함수는 인자의 탄젠트(tangent) 값을 구합니다.
문법은 다음과 같습니다.
double tan(double a);
사용 예시입니다.
double a = tan(3.14 / 2);
4. exp() – 지수(e) 값 계산
exp() 함수는 자연상수 e(약 2.71828)를 밑으로 하는 거듭제곱 값을 계산합니다. 즉, e^a를 반환합니다.
문법은 다음과 같습니다.
double exp(double a);
사용 예시입니다.
double a = exp(4.6);
5. floor() – 소수점 내림
floor() 함수는 실수를 무조건 내림하여 가장 가까운 정수로 만듭니다. 소수 부분이 아무리 커도 버려집니다.
문법은 다음과 같습니다.
double floor(double a);
사용 예시입니다.
double a = floor(93.58);
실행 결과는 다음과 같습니다.
a = 93
6. ceil() – 소수점 올림
ceil() 함수는 실수를 무조건 올림하여 가장 가까운 정수로 만듭니다. 소수 부분이 조금이라도 있으면 위 정수로 반올림됩니다.
문법은 다음과 같습니다.
double ceil(double a);
사용 예시입니다.
double a = ceil(93.58);
실행 결과는 다음과 같습니다.
a = 94
7. abs() – 절댓값 계산
abs() 함수는 정수의 절댓값을 구합니다. 참고로 이 함수는 math.h가 아닌 stdlib.h 헤더 파일에 선언되어 있으며, 실수형 절댓값이 필요할 때는 math.h의 fabs() 함수를 사용해야 합니다.
문법은 다음과 같습니다.
int abs(int a);
사용 예시입니다.
int a = abs(-6);
실행 결과는 다음과 같습니다.
a = 6
8. pow() – 거듭제곱 계산
pow() 함수는 첫 번째 인자를 밑으로, 두 번째 인자를 지수로 하는 거듭제곱 값을 계산합니다.
문법은 다음과 같습니다.
double pow(double a, double b);
사용 예시입니다.
double x = pow(2, 3);
실행 결과는 다음과 같습니다.
x = 8
9. sqrt() – 제곱근 계산
sqrt() 함수는 인자의 제곱근(square root) 값을 구합니다. 음수를 입력하면 오류(NaN)가 발생하므로 반드시 0 이상의 값을 전달해야 합니다.
문법은 다음과 같습니다.
double sqrt(double a);
사용 예시입니다.
double x = sqrt(36);
실행 결과는 다음과 같습니다.
x = 6
마무리
지금까지 C 언어의 math.h 라이브러리에서 가장 많이 사용되는 대표적인 수학 함수들을 살펴보았습니다. 삼각함수인 sin(), cos(), tan()부터 실수 처리에 유용한 floor(), ceil(), 그리고 pow(), sqrt()까지 이 함수들을 잘 활용하면 복잡한 수치 계산도 손쉽게 구현할 수 있습니다. 함수를 사용하기 전에는 반드시 #include <math.h>를 선언하고, 컴파일 시 수학 라이브러리 링크 옵션(예: gcc의 -lm)을 확인하는 것도 잊지 마세요.