著者:崎間
C,C++言語には以下の数学関数が用意されていますが,これらを使うには
#include <math.h>
として math.h というヘッダをインクルードする必要があります.コンパイル時には
$ gcc foo.c -lm
というふうに -lm オプションを付ける必要がある場合があります.
一つまたは二つの引数を与え,それぞれの関数に対応した計算値を返すものです.
関数プロトタイプ | 内容 | 解説 |
double pow(double x, double y) | x^y | べき乗 |
double fabs(doule x) | |x| | 絶対値 |
double sqrt(double x) | sqrt(x) | 平方根 |
double cbrt(double x) | sqrt[3](x) | 立方根 |
double hypot(double x, double y) | sqrt(x^2 + y^2) | 二乗を足したものの平方根 |
関数プロトタイプ | 内容 | 解説 |
double sin(double x) | sin(x) | 三角関数 |
double cos(double x) | cos(x) | 〃 |
double tan(double x) | tan(x) | 〃 |
double asin(double x) | Arcsin(x) | 逆三角関数 |
double acos(double x) | Arccos(x) | 〃 |
double atan(double x) | Arctan(x) | 〃 |
double atan2(double y, double x) | Arctan(y/x) | 〃 |
double sinh(double x) | sinh(x) | 双曲線関数 |
double cosh(double x) | cosh(x) | 〃 |
double tanh(double x) | tanh(x) | 〃 |
double asihh(double x) | Arcsinh(x) | 逆双曲線関数 |
double acosh(double x) | Arccosh(x) | 〃 |
double atanh(double x) | Arctanh(x) | 〃 |
関数プロトタイプ | 内容 | 解説 |
double exp(double x) | exp(x) | 指数関数 |
double expm1(double x) | exp(x)-1 | 〃 |
double log(double x) | log_e(x) | 対数関数 |
double log10(x) | log_10(x) | 〃 |
double log1p(x) | log_e(1+x) | 〃 |
関数プロトタイプ | 内容 |
double rint(double x) | x を四捨五入した整数 |
double floor(double x) | n <= x < n+1 の整数 |
double ceil(double x) | n-1 < x <= n の整数 |
定数として値が定義されているものです.
定数の表記 | 意味 |
M_E | e |
M_LOG2E | log_2(e) |
M_LOG10E | log_10(e) |
M_LN2 | log_e(2) |
M_LN10 | log_e(10) |
定数の表記 | 意味 |
M_PI | π |
M_PI_2 | π/2 |
M_PI_4 | π/4 |
M_1_PI | 1/π |
M_2_PI | 2/π |
M_2_SQRTPI | 2/sqrt(π) |
M_SQRT2 | sqrt(2) |
M_SQRT1_2 | 1/sqrt(2) |