- 追加された行はこの色です。
- 削除された行はこの色です。
C,C++言語には以下の数学関数が用意されていますが,これらを使うには
#include <math.h>
として math.h というヘッダをインクルードする必要があります.コンパイル時には
$ gcc foo.c -lm
というふうに -lm オプションを付ける必要がある場合があります.
* 数学関数(要 math.h) [#a4cc7227]
一つまたは二つの引数を与え,それぞれの関数に対応した計算値を返すものです.
** 基本的なもの [#xdd08d02]
,関数プロトタイプ,内容,解説
,"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),二乗を足したものの平方根
** 三角関数関係 [#y4363771]
関数プロトタイプ 内容 解説
double sin(double x) sin(x) 三角関数
|関数プロトタイプ|内容|解説|h
|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 の整数
数学定数(要 math.h)
定数として値が定義されているものです.
指数・対数
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)