- 追加された行はこの色です。
- 削除された行はこの色です。
#author(崎間)
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),二乗を足したものの平方根
|関数プロトタイプ|内容|解説|h
|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) 三角関数
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) 〃
|関数プロトタイプ|内容|解説|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)
** 指数・対数関数 [#r554d4a8]
|関数プロトタイプ|内容|解説|h
|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)|〃|
** その他 [#hea0cd52]
|関数プロトタイプ|内容|h
|double rint(double x)|x を四捨五入した整数|
|double floor(double x)|n <= x < n+1 の整数|
|double ceil(double x)|n-1 < x <= n の整数|
* 数学定数(要 math.h) [#wbb01f5a]
定数として値が定義されているものです.
指数・対数
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)
** 指数・対数 [#t59080bc]
|定数の表記|意味|h
|M_E|e|
|M_LOG2E|log_2(e)|
|M_LOG10E|log_10(e)|
|M_LN2|log_e(2)|
|M_LN10|log_e(10)|
** 円周率 [#z67ce008]
|定数の表記|意味|h
|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)|