電卓とgosh比較(対数)

指数・対数



アニメ『政宗くんのリベンジ』
どん底から這い上がったイケメンの復讐劇、いや、ラブコメです。
主人公の政宗くんは昔、安達垣愛姫(あだがきあき)にフラれた腹いせに、イケメンになった自分に惚れさせて、思いっきりフッてやるという復讐を計画しています。しかし、安達垣さんは「残虐姫」と呼ばれるほどの超S女子。なかなか手強そうです。政宗くんは復讐を遂げることはできるのでしょうか。

準備するもの
  • 電卓(fx-JP900)
  • Linux PC(確認環境はDebian 8.3 Jessie)
  • 端末ウィンドウ(ターミナルソフト)
  • gosh(gauche)

どん底ということで、今回は底(てい)が出てくる対数計算をやってみます。電卓とgosh(Gauche)それぞれで計算します。

\[
\log_{2} 65536=
\]

この計算式は2を何乗したら65536になるかを表しています(2のことを底、65536を真数と呼びます)。言い換えると、以下のxを求める計算になります。
\[
65536=2^x
\]

では計算してみましょう。まずは電卓から。

上記操作をするとlog□(□)と表示されますので、□の中に数字を入れます。

次はgosh(Gauche)です。goshでは、log関数を使います。注意するのは、第2引数の方が「底」であることです。
(log 真数 底)

takk@deb83:~$ gosh
gosh> (log 65536 2)
16.0
gosh> (exit)
takk@deb83:~$ 

次に自然対数(底がe)の計算をします。
\[
\log 5=
\]

電卓では底が10の常用対数と間違えないようにlnを使います。

goshです。引数が1つのlog関数は底がeですので、特に複雑なことをすることもなく計算できます。

gosh> (log 5)
1.6094379124341003
gosh> 

今度は常用対数(底が10)の計算です。

\[
\log 1000=
\]

電卓です。

 

goshです。

gosh> (log 1000 10)
2.9999999999999996
gosh> 

ぴったり3になりませんね。おそらくlog関数は底がeですので、log 1000 / log 10を行い、桁落ちするからでしょう。log10を使います。

gosh> (log10 1000)
3.0
gosh> 

コメント

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