2016/05/05 公開
・対数 log
対数は、以下の式でyを真数、aを底をした時のxのことです。

Javaでは、底を10または自然対数(e)としたときのメソッドが用意されています。それぞれの仕様は以下のとおりです。
Math.log10メソッド
public static double Math.log10( double a )
■aの対数(底=10)を返します。 パラメータ a : 値 戻り値 10を底とするaの対数

Math.logメソッド
public static double Math.log( double a )
■aの自然対数(底=e)を返します。 パラメータ a : 値 戻り値 aの自然対数

Javaのメソッドには、任意の底から対数を計算するメソッドはありません。そこで、Javaで用意されているMath.logメソッドまたはMath.log10メソッドを使って計算してみます。
任意の底aから対数を計算する式は、下の式のように書くことができます。bは任意の値なので、10でも自然対数eでもよいことになります。

以下は、この式を使って対数を計算するJavaのソースコード例です。
LogSample.java ← クリックしてダウンロードページに移動001: public class LogSample { 002: public static void main( String[] args ) { 003: // y = aのx乗 004: double x = 5.0; // 指数(対数) 005: double a = 2.0; // 底 006: double y = Math.pow( a, x ); // 真数 007: 008: // 結果表示 009: String head = "底=" + a + " 真数=" + y + "の対数"; 010: 011: // Math.logで計算 012: double xe = Math.log( y ) / Math.log( a); 013: System.out.println( head + "(Math.logを使用) : " + xe ); 014: 015: // Math.log10で計算 016: double x10 = Math.log10( y ) / Math.log10( a); 017: System.out.println( head + "(Math.log10を使用) : " + x10 ); 018: } 019: }
LogSample.javaの出力結果
底=2.0 真数=32.0の対数(Math.logを使用) : 5.0 底=2.0 真数=32.0の対数(Math.log10を使用) : 5.0
Math.logとMathlog10のどちらのメソッドを使ってもの同じ結果が得られています。
参考にしてください。
■関連コンテンツ
数学関数について | 数学関数について解説 |
累乗 pow | Math.powの使い方について解説 |
■新着情報
2022.07.07 | 外部プログラムの実行 | exeファイル実行 |
2022.07.06 | 完全数 | 6=1+2+3 |
■広告
