C 수식 함수
보이기
(Tgmath.h에서 넘어옴)
C 표준 라이브러리 |
---|
일반 주제 |
기타 주제 |
C POSIX 라이브러리 |
---|
|
C 수식 함수는 기초 수식 함수들을 구현하는 C 프로그래밍 언어의 표준 라이브러리 안의 함수들의 모임이다.[1][2]
함수 개요
[편집]math.h는 여러 수학 함수들을 포함하는 C 언어의 표준 라이브러리이다. 대부분의 함수들이 부동소수점을 다루며, 각도는 라디안을 사용한다.
함수 | 설명 |
---|---|
삼각 함수 | |
double sin ( double x ); | 사인 x를 구한다. |
double cos ( double x ); | 코사인 x를 구한다. |
double tan ( double x ); | 탄젠트 x를 구한다. |
역 삼각 함수 | |
double asin ( double x ); | 아크 사인 x를 구한다. |
double acos ( double x ); | 아크 코사인 x를 구한다. |
double atan ( double x ); | 아크 탄젠트 x를 구한다. |
double atan2 ( double y, double x ); | 아크 탄젠트 y/x를 구한다. |
쌍곡선 함수 | |
double sinh ( double x ); | 하이퍼볼릭 사인 x를 구한다. |
double cosh ( double x ); | 하이퍼볼릭 코사인 x를 구한다. |
double tanh ( double x ); | 하이퍼볼릭 탄젠트 x를 구한다. |
지수 · 대수 함수 | |
double exp ( double x ); | ex를 구한다. |
double frexp ( double x, int * exp ); | 지수를 exp가 가리키는 변수에 저장하고 가수를 반환한다. |
double ldexp ( double x, int exp ); | x * 2exp를 반환한다. |
double log ( double x ); | loge x를 구한다. |
double log10 ( double x ); | log10 x를 구한다. |
double modf ( double x, double * intpart ); | 정수부를 intpart가 가리키는 변수에 저장하고 소수부를 반환한다. |
거듭제곱 · 거듭제곱근 · 올림 · 내림 · 절댓값 · 나머지 함수 | |
double pow ( double x, double y ); | xy를 구한다. |
double sqrt ( double x ); | 를 구한다. |
double ceil ( double x ); | x보다 작지 않은 가장 작은 정수를 구한다. |
double floor ( double x ); | x보다 크지 않은 가장 큰 정수를 구한다. |
double fabs (double x); | x의 절댓값을 구한다. |
double fmod ( double x, double y ); | x를 y로 나눈 나머지를 구한다. |
XSI에서 추가된 것들
[편집]이 함수들은 ANSI나 표준 C에는 등록되지 않았다.
이름 | 설명 |
---|---|
double j0(double x) | 밑이 0인 제 1종 베셀 함수 |
double j1(double x) | 밑이 1인 제 1종 베셀 함수 |
double jn(int n,double x) | 밑이 n인 제 1종 베셀 함수 |
double scalb(double x,int y) | x * FLT_RADIX y
|
double y0(double x) | 밑이 0인 제 2종 베셀 함수 |
double y1(double x) | 밑이 1인 제 2종 베셀 함수 |
double yn(int n,double x) | 밑이 n인 제 2종 베셀 함수 |
The double
-to-string conversion functions ecvt
, fcvt
and gcvt
have been deprecated in favour of sprintf
.
변수 · 상수 · 형식
[편집]이름 | 설명 |
---|---|
상수 | |
HUGE_VAL | 아주 큰 값을 나타낸다. 수학 계산에서 결과가 너무 커 오버플로우가 나면 이 값을 반환한다. |
M_E | 자연상수 e |
M_LOG2E | log2e |
M_LOG10E | log10e |
M_LN2 | loge2 |
M_LN10 | loge10 |
M_PI | 원주율 π |
M_PI_2 | |
M_PI_4 | |
M_1_PI | |
M_2_PI | |
M_2_SQRTPI | |
M_SQRT2 | |
M_1_SQRT2 |
예제
[편집]다음 예제는 부동소수점 수들의 거듭제곱을 출력한다. 컴파일시에 -lm 옵션을 추가해주어야 한다
int main (void)
{
printf ("7 ^ 3 = %lf\n", pow (7.0,3));
printf ("4.73 ^ 12 = %lf\n", pow (4.73,12));
printf ("32.01 ^ 1.54 = %lf\n", pow (32.01,1.54));
return 0;
}
실행 결과
7 ^ 3 = 343.000000 4.73 ^ 12 = 125410439.217423 32.01 ^ 1.54 = 208.036691
같이 보기
[편집]각주
[편집]- ↑ 《ISO/IEC 9899:1999 specification》 (PDF). p. 212, § 7.12.
- ↑ Prata, Stephen (2004). 《C primer plus》. Sams Publishing. Appendix B, Section V: The Standard ANSI C Library with C99 Additions. ISBN 0-672-32696-5.