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