nの階乗の桁数の求め方は? 中学生でもわかりやすく | 質問の答えを募集中です! nの階乗の桁数の求め方は? 中学生でもわかりやすく | 質問の答えを募集中です!

nの階乗の桁数の求め方は? 中学生でもわかりやすく

数学

nの階乗の桁数の求め方を教えてくださいm(__)m アバウトでいいので。 中学生でもざっくりわかるくらいに

桁数問題では常用対数をとるのが定石。

つまり、log(n!)を考える。

この計算では、スターリング公式を用いて近似計算できる。

スターリングの近似によると

証明は難しいので結果だけ書きます。

スターリングの近似により

n! ≒ √(2nπ)(n/e)^n

log(n!) ≒ log(√(2nπ)(n/e)^n)

= log(√(2nπ)) + log((n/e)^n)

= (1/2)log(2nπ) + nlog(n/e)

= (1/2)log(2nπ) + nlog(n) – nlog(e)

= (1/2)log(2π) + (1/2)log(n) + nlog(n) – nlog(e)

= (1/2)log(2π) + (1/2 + n)log(n) – nlog(e)

= (1/2 + n)log(n) – nlog(e) + (1/2)log(2π)

 

log(e) ≒ 0.4343

(1/2)log(2π) ≒ 0.3991

なので

 

≒ (1/2 + n)log(n) – 0.4343n + 0.3991

この式を計算した後、小数点以下を切り捨てて1を足すと、n!の桁数になります。

 

このlogは常用対数です。

常用対数 log(n) は、10を何乗したらnになるか?という問題の答えです。

たとえば、10の2乗=100なので、log(100)=2となります。

 

実際に計算してみると

 

100!の桁数は

(1/2 + 100)log(100) – 0.4343×100 + 0.3991

= 100.5×2 – 43.43 + 0.3991

= 157.9691

なので、切り捨てて1を足すと158桁

 

1000!の桁数は

(1/2 + 1000)log(1000) – 0.4343×1000 + 0.3991

= 1000.5×3 – 434.3 + 0.3991

= 2567.5991

なので、切り捨てて1を足すと2568桁

 

のように計算できます。



 ⬇人気の記事!⬇

タイトルとURLをコピーしました