/* * prog05.c --- 数学ライブラリィにある関数の呼び出し * コンパイルには、たとえば gcc -o prog05 prog05.c -lm */ /* * 使用する数学関数の * (1) 返す値の型 * (2) 引数 (argument) の型 * を宣言するためには math.h をインクルードするのが手っ取り早い。 * (一度 /usr/include/math.h を見てみることを勧める。) * * リンクするには -lm (link mathematical libraray) オプションが必須。 */ #include #include int main() { double x; printf("一つの実数を入力してください: "); scanf("%lf", &x); /* ルート (非負の平方根) */ printf("sqrt(%g) =%g\n", x, sqrt(x)); /* 三角関数 sin */ printf("sin(%g) =%g\n", x, sin(x)); /* e を底とする指数関数 */ printf("exp(%g) =%g\n", x, exp(x)); /* 自然対数 */ printf("log(%g) =%g\n", x, log(x)); /* 常用対数 (10 を底とする対数) */ printf("log10(%g) =%g\n", x, log10(x)); /* 双曲線関数 hyperbolic sin) */ printf("sinh(%g) =%g\n", x, sinh(x)); /* 巾乗 (power) */ printf("pow(%g,%g)=%g\n", x, 1.0/3, pow(x, 1.0/3)); /* 逆三角関数 Arctan */ printf("atan(%g) =%g\n", x, atan(x)); /* 絶対値 */ printf("fabs(%g) =%g\n", x, fabs(x)); /* 整数部分 (-∞に向かっての切り捨て = いわゆる Gauss の括弧) */ printf("floor(%g) =%g\n", x, floor(x)); /* ∞に向かっての切り上げ */ printf("ceil(%g) =%g\n", x, ceil(x)); return 0; }