常用対数の利用

この記事の所要時間: 532

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

常用対数とは

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

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

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

桁数を求める

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

大きい数の桁数

自然数\(N\)が\(n\)桁の数だとすると, 次の不等式が成り立ちます.

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

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

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

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

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

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

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

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

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

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

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

となるので, \(\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{align*}
\log_{10}{N} &= \log_{10}{2^{100}}\\
&= 100\log_{10}{2}\\
&= 100\cdot 0.3010\\
&= 30.10
\end{align*}

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

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

\begin{align*}
\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{align*}

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

最上位の桁を求める

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

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

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

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

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

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

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

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

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

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

つまり, この不等式をみたす\(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
  • このエントリーをはてなブックマークに追加