◆PROCESSING 逆引きリファレンス
カテゴリー:演算処理
n乗根を計算するには
【概要】
PROCESSINGで平方根や立方根を求める方法を紹介します。
PROCESSINGで平方根を求めるのは、とても簡単です。PROCESSINGには、平方根を計算する sqrt () 命令があります。sqrt() は正の平方根を返します。
ではn乗したらxになる数を求めるには、どうしたら良いでしょうか?。
PROCESSINGはJavaをベースにした言語ですので、JavaのMathクラスが利用できます。Math.pow() を利用すれば、n乗根を計算できます。
【詳細】
平方根を求める
平方根を求めるfloat n = sqrt ( float x ) ;
n : xの正の平方根
x : 平方根を求めたい数
平方根とは、 2乗したらnになる数の事(nの平方根)です。中学校あたりで習いますよね。
例えば2乗して4になる数は、2と-2です。2×2 = 4、-2×-2=4 です。
sqrt() 命令は正の平方根を返してくれます。
1 |
float ret = sqrt( 16.0 ); // ret = 4.0 |
例えば上記プログラムは 4.0 を返します。(16は4を2回掛けたもの)
n乗根を求める
n乗根を求めるdouble r = Math . pow ( double n, double x ) ;
n : 掛ける元の数(基数)
x : 何回掛けるか(乗数)
r : nをx乗した結果
Java の Math クラスがもつ pow メソッドは、nのx乗(nをx回掛けた数)を計算してくれます。
1 |
double ret = Math.pow( 4.0, 3.0 ); // ret = 64.0 |
例えば上記プログラムは 64.0 を返します。(4を3回掛ける=4×4×4=64)
この pow メソッドを応用すればn乗根が計算できます。
たとえば3回掛けたらnになる数(nの立方根)は、nを1/3回掛けた数と同意です。
以下のサイト様などが大変わかりやすいと思います。
- 具体例で学ぶ数学 様
- インストラクターのネタ帳 様
1 |
double ret = Math.pow( 64.0, 1.0/3.0 ); // ret = 4.000000165259169 |
よって、3回掛けたら64になる数は pow メソッドを用いて上記のように計算可能です。
【関連記事】
サンプルプログラム
n乗根を計算する例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
/** * n乗根の計算 Sample * @author MSLABO * @version 1.0 */ void setup(){ //2乗したら2になる数を求める println( "sqrt=" + sqrt( 2.0 ) ); println( "pow =" + Math.pow( 2.0, 1.0/2.0 ) ); noLoop(); } void draw(){ background(200); } |
2乗(2回掛けたら)2になる数(√2)を計算しています。
sqrt と、Math . pow を使って計算しています。どちらも(計算精度の違いはありますが)約1.4になります。
本ページで利用しているアイコン画像は、下記サイト様より拝借しております。各画像の著作権は、それぞれのサイト様および作者にあります。