常用対数の利用

この記事の所要時間: 553

常用対数の利用例(桁数を求める)

常用対数とは

常用対数は底が10である対数(\log_{10}{3}など)です.

対数についてはこちらを見てください.

N=10^nのとき, 対数の定義から, n=\log_{10}{N}となります.

桁数を求める

常用対数を利用すると, 大きな数(例えば3^{100})が何桁あるかや, 小さい数(例えば3^{-100}=1/3^{100})について, 小数点以下何桁目にはじめて0出ない数字が出てくるか, などを求めることができます.

大きい数の桁数

自然数Nn桁の数だとすると, 次の不等式が成り立ちます.

\begin{equation*} 10^{n-1} \leqq N < 10^{n} \end{equation*}

例えば, 365は3桁ですが, 10^2=100\leqq 365<1000=10^3です.

各項について常用対数をとると, 不等号の向きは変わらないので,

\begin{equation*} n-1\leqq \log_{10}{N}<n \end{equation*}

つまり, \log_{10}{N}の整数部分が求まれば, そこからNの桁数nが分かります.

小さい数の小数点以下何桁目に0出ない数字が出るか

ここでは, Nを0と1の間の数とします. Nの小数点以下n桁目に0出ない数字が出るとき, 次の不等式が成り立ちます.

\begin{equation*} 10^{-n}\leqq N<10^{-(n-1)} \end{equation*}

例えば, 0.00034ではn=4となりますが, 10^{-4}=0.0001\leqq 0.00034<0.001=10^{-3}となっています.

各項について常用対数をとると,

\begin{equation*} -n\leqq \log_{10}{N}<-(n-1) \end{equation*}

となるので, \log_{10}{N}の値が求まれば, nが分かります.

例題.

次の(1), (2)についてnを求めなさい.但し, \log_{10}{2}=0.3010とする.

(1) 2^{100}の桁数n.

(2) (0.2)^{50}の小数点以下はじめて0でない数字が出てくる桁n.

解答

(1) N=2^{100}とおいて,

\begin{eqnarray*} \log_{10}{N} &=& \log_{10}{2^{100}}\\ &=& 100\log_{10}{2}\\ &=& 100\cdot 0.3010\\ &=& 30.10 \end{eqnarray*}

より, 30\leqq \log_{10}{N}<31となり, n=31.

(2) N=(0.2)^{50}とおいて,

\begin{eqnarray*} \log_{10}{N} &=& 50\log_{10}{0.2}\\ &=& 50\log_{10}{\frac{2}{10}}\\ &=& 50(\log_{10}{2}-\log_{10}{10})\\ &=& 50(0.3010-1)\\ &=& -39.95 \end{eqnarray*}

よって, -40\leqq\log_{10}{N}<-39なので, n=40.

最上位の桁を求める

桁数を求める問題の応用として, Nの最上位の桁を求めることができます. ここでは例として, 上の例題で用いたN=2^{100}の最上位の桁の数字を求めます.

2^{100}が31桁であることがすでに分かっているので, 最上位の桁をMとおくと, 次の不等式を立てることができます. (1\leqq M\leqq 9)

\begin{equation*} M\cdot 10^{30}\leqq 2^{100}<(M+1)\cdot 10^{30} \end{equation*}

ここでは不等式の右側の項は31乗ではなく30乗となることに注意してください.

先ほどと同様に常用対数をとると,

\begin{equation*} \log_{10}{M\cdot 10^{30}}\leqq \log_{10}{2^{100}}<\log_{10}{(M+1)\cdot 10^{30}} \end{equation*}

対数の性質から変形して, \log_{10}{2^{100}}=30.10も代入すると,

\begin{equation*} 30+\log_{10}{M}\leqq 30.10<30+\log_{10}{(M+1)} \end{equation*}

よって, 次の不等式が出てきます.

\begin{equation*} \log_{10}{M}\leqq 0.10<\log_{10}{(M+1)} \end{equation*}

つまり, この不等式をみたすMを探せばいいことになります.

\log_{10}{1}=0, \log_{10}{2}=0.3010なので, そのようなMは1であることが分かります. したがって, 2^{100}の最上位の桁の数字は1です.

最上位の2桁を求めたいような場合も同様の考え方で求めることができます. こういった問題では, \log_{10}{2}=0.3010, \log_{10}{3}=0.4771, \log_{10}{7}=0.8451などの近似値が与えられるので, それらを上手く用いて不等式をみたすMを探す必要があります.

スポンサーリンク
sub2
sub2
  • このエントリーをはてなブックマークに追加