「C言語で二乗を計算する方法」の版間の差分
提供: C言語入門
(ページの作成:「'''C言語'''でxの二乗を求める方法を説明します。'''累乗'''('''べき乗''')を簡単に求めることができます。 '''読み方''' ;pow:ぱう ;...」) |
(相違点なし)
|
2016年1月9日 (土) 20:58時点における最新版
C言語でxの二乗を求める方法を説明します。累乗(べき乗)を簡単に求めることができます。
読み方
- pow
- ぱう
- 累乗
- るいじょう
- べき乗
- べきじょう
概要
C言語で累乗を求める方法は、数学ライブラリ(libm)のpow関数を利用します。math.h を include します。 libm をリンクするために、-lm オプションをつけてコンパイルします。
#include <math.h> double x = 3.0; double d = pow(x, 2.0); // 2乗
第2引数を変更することで、3乗、4乗を計算できます。
double d3 = pow(x, 3.0); // 3乗 double d4 = pow(x, 4.0); // 4乗
pow1.c の例
ソースコード pow1.c
/* * pow1.c * Copyright (C) 2016 kaoru <kaoru@localhost> */ #include <math.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { double x = 3.0; double d = pow (x, 2.0); (void) printf("%lf\n", d); exit(EXIT_SUCCESS); }
コンパイル
cc -lm pow1.c -o pow1
実行例
% ./pow1 9.000000
pow の実装
FreeBSD では、 pow()のプロトタイプ宣言は、
/usr/src/lib/msun/src/math.h
でされています。
pow()は, __ieee754_pow と define されています。
/usr/src/lib/msun/src/math_private.h 682:#define __ieee754_pow pow 708:#define __ieee754_powf powf
/usr/src/lib/msun/src/e_pow.c
に
double __ieee754_pow(double x, double y)
が実装されています。興味がある人は読んでみてください。