対数とは?
対数は、とてもシンプルな問いに答えてくれます。「底 b を何乗すれば、数 x になるのか?」というものです。これを \(\log_b(x) = y\) と書き、\(b^y = x\) を意味します。たとえば \(10^3 = 1000\) なので、\(\log_{10}(1000) = 3\) となります。この計算機は、任意の正の値 x に対して、任意の有効な底 b の対数を求められるほか、よく使われる3種類の対数も自動で表示します。
この計算機の使い方
値 x(0より大きいこと)と 底 b(0より大きく、1ではないこと)を入力してください。計算結果は \(\log_b(x)\) です。常用対数なら底10を、コンピュータや情報理論で使われる二進対数なら底2を、自然対数なら 2.718281828(ネイピア数 e)を底に指定します。メインの結果の下にある表には、\(\ln(x)\)・\(\log_{10}(x)\)・\(\log_2(x)\) が常に表示されるので、すぐに参照できます。
計算式の解説
多くのコンピュータが直接計算できるのは、自然対数(ln)と底10の対数だけです。そのため、任意の底の対数は「底の変換公式」を使って求めます。
$$\log_{\text{Base }b}\left(\text{Value }x\right) = \frac{\ln\left(\text{Value }x\right)}{\ln\left(\text{Base }b\right)}$$
分子と分母の底をそろえれば同じ比になるため、\(\log_b(x) = \log_{10}(x) \div \log_{10}(b)\) と書いても構いません。どちらでも同じ答えになります。
計算例
\(\log_2(8)\) を求めてみましょう。底の変換公式を使うと、\(\ln(8) \approx 2.079442\)、\(\ln(2) \approx 0.693147\) です。これを割り算すると、$$2.079442 \div 0.693147 = 3$$ となります。\(2^3 = 8\) なので、定義どおりの結果です。
よくある質問
なぜ x は正の数でなければならないの? 0や負の数の対数は、実数の範囲では定義されません。正の底を実数で何乗しても、0以下の値にはならないからです。
なぜ底を1にできないの? 1は何乗しても必ず1になるため、底が1の対数では x の値を区別できません。よって定義されません。
自然対数とは? 底をネイピア数 e ≈ 2.71828 とした対数で、\(\ln(x)\) と書きます。微積分や、成長・減衰の問題、金融など、さまざまな分野で登場します。