百物語改め「九一三・六物語」

夢日記・百合・数学・怪談・神社その他

大きい自然数の階乗をエクセルで計算する。

2015-01-09 | 数学
エクセルには階乗(例えば5に対して5!=1×2×3×4×5を計算する関数)を計算する
fact()という関数があります。
10!を計算したければ「=fact(10)」と入力すればいいわけです。
170!くらいまでならこれで計算できます。
それ以上の数の階乗(たとえば200!)を計算するときは工夫が必要になります。

階乗を拡張した関数にガンマ関数Γ()というものがあります。
自然数nについて
Γ(n+1)=n!
の関係があります。
エクセルにはガンマ関数の自然対数を計算する関数「GAMMALN」があります。
これはfactより大きい数について計算してくれるのでこれを使います。
A1セルに入力された値の階乗を計算したいとき、まず、「GAMMALN(A1+1)」で
A1の階乗の自然対数を計算します。
これを10の自然対数「LN(10)」で割ると底の変換公式から階乗の常用対数が分かります。
それを式で描くと (GAMMALN(A1+1)/LN(10)) です。
よって 10^(GAMMALN(A1+1)/LN(10)) で階乗が計算できます。しかしA1が大きいときに表現できなくなるので
指数表記に直します。すると以下のようになります。



=10^((GAMMALN(A1+1)/LN(10))-INT((GAMMALN(A1+1)/LN(10))))×10^ =INT((GAMMALN(A1+1)/LN(10)))


これをA1以外の適当なセルにコピペしてください。
A1の値の階乗を指数表記してくれます。


夢日記 阿部共実と数学書

2015-01-09 | 数学
こんな夢を見た。

漫画を読んでいる。多分阿部共実の短編。
結構はっきり内容が読める。でも忘れてしまった。
折角なので夢の中の数学書を読んでみる。
現世で知られていない定理も載っているかも。
読んでみたがよく読めなかった。