アプリ版:「スタンプのみでお礼する」機能のリリースについて

常用対数の求め方
log10の2は約0.3010…ですがこの求め方を教えて下さい。0.1から順番に計算すれば良いのは分かりますが、べき乗が1以下の小数点の場合という意味です。
10の0.1乗とかどう計算すればよいんでしょう?

A 回答 (8件)

だからそう言ってる...

    • good
    • 0

古式ゆかしい方法は次の通り.



k を正の (大きな) 整数とすると ε = 2^-k は 0 に近い. 従って任意の正の実数 x に対して (x^ε-1)/(10^ε-1) は x の常用対数 (の近似値) となる.

最初の常用対数表はこんな感じで作ったらしいよ. k を一定にすれば分母は定数だから, 1回計算しておけばそれですむ.
    • good
    • 0

関数電卓ではなく普通の電卓を使うという話?



y = (x-1)/(x+1)
logx = 2{y + y^3/3 + y^5/5 + ・・・}
だと割と収束速いし、収束半径無いから使いやすい。

x = 10 だと収束遅いけど
log(10)=3log(2) + log(1.25)
とか工夫すればいいと思う。
log_10(2) = log(2)/log(10)
で計算できます。
    • good
    • 0

[1] 以下、常用対数(底が10の対数)をlog、自然対数(底がe=2.7182818...の対数)をlnと書くことにしますと、


  log(x) = ln(x) / ln(10)
だから問題はln(x)とln(10)の計算です。(ご質問ではx=2)

[2] 0<x≦2について
  ln(x) = (x-1) - ((x-1)^2)/2 + ((x-1)^3)/3 - .....
です。ただしxが1に近い方が速く収束する。例えばx=2でこの計算をやると300個ほどの項を足し算引き算してようやく有効数字2桁が決まるという大変な計算になっちゃいますが、x=9/8やx=11/10だと6個の項、x=5/4でも13個の項で有効数字6桁に達します。

[3] (ご質問のように)xが1よりだいぶ大きい場合には、1<A≦2 である適当な数 A(例えばA=11/10とかA=5/4とか)と自然数nを使って
  ln(x) = ln(x/(A^n)) + n ln(A)
によって x/(A^n) が1に近くなるようにできるから、[2]でln(x/(A^n))が計算できます。もちろんln(A)も[2]で計算する。これでln(2)が少ない項数で計算できます。

[4] ひとたび ln(2)を計算しておけば
  ln(x) = ln(x/(2^m)) + m ln(2)
によって[3]のnが過大にならないようにできる。A=5/4でln(A)の計算をやっておくと、ln(10)が
  ln(10) = ln(10/(2^3)) + 3ln(2) = ln(A) + 3ln(2)
で計算できますね。

[5] ひとたび ln(10)を計算しておけば、もちろん
  ln(x) = ln(x/(10^m)) + m ln(10)
これでどんなxが来ても大丈夫。

という仕掛け。ですから

> 10の0.1乗とか

は計算しないで済む。


 ちなみに10^0.1の計算は
  10^0.1 = e^(0.1 ln(10))
を使って、
  e^x = 1 + x + (x^2)/2! +(x^3)/3! + .... (x=0.1 ln(10) )
で計算する。x≒0の時にうんと速く収束します。
    • good
    • 0

0.1乗の意味については...


x = 10^0.1 の両辺を 10乗すると
x^10 = 10^1 になる。
log_10 2 ≒ 0.301 ⇔ 10^0.301 ≒ 2 も、
同様に 10^301 ≒ 2^1000 で考えれば
自然数乗(つまり掛け算)として理解できる。

log_10 2 の近似値を求めるには、
2^p の p を大きくしていって値が 10^q に近いものを探し
10^q ≒ 2^p ⇔ log_10 2 ≒ q/p とすればいい。

ただし 2^p の桁数が多くなると、計算機にやらせるとしても
計算するのも途中結果を覚えておくことさえ大変になるので、
実際には下記のようにやる。というか、歴史的にそうやっていた。

10^(1/m) = 1 + a, y^(1/m)= 1 + b と置いて
m を十分大きくすれば、 a, b は正値で 0 に近づく。
a が小さくなれば、x = log_10 y に対して
(1 + b) = (1 + a)^x ≒ 1 + ax より x ≒ b/a となる。
平方根の計算(開平法)ができれば、
m = 2^k の k をどんどん大きくできるので
log_10 y の近似値を求めることができる。
    • good
    • 0

2^3=8<10<16=2^4



1/4<log_10(2)<1/3

2^3=8<10<16=2^4
↓各辺を2乗すると
2^6=64<100<2^8
2^6=64<100<128=2^7
10^2<2^7
10^(2/7)<2

2/7<log_10(2)
2/7<log_10(2)<1/3

2^3=8<10<16=2^4
↓各辺を3乗すると
2^9=64*8<10^3<2^12
2^9=512<10^3<1024=2^10
10^3<2^10
10^(3/10)<2

3/10<log_10(2)
0.3=3/10<log_10(2)<1/3<0.4

log_10(2)の小数第1位は3である
    • good
    • 0

2^3<10<16=2^4


2^3<10<2^4
2^3<10
2<10^(1/3)
10<2^4
10^(1/4)<2
10^(1/4)<2<10^(1/3)

1/4<log_10(2)<1/3
    • good
    • 0

一生懸命筆算で近似計算をしても何の役にも立たないので(応用が利かない)、さっさと電卓で計算してください。



今は、スマホのアプリでもWebでも自由に使える「関数電卓」が存在します。
「計算方法を編み出すのが趣味」ということでもなければ、実用的には「f電卓を使えばよい」ということです。

日本では、中学や高校の授業では「それ以上は表せない」ものとして「平方根」や「三角関数」「対数」「指数」をそのまま残して「答」とすることが多いですが、欧米特にアメリカでは「きちんと小数にする」(近似でよいので)ところまで教えることが多いようです。
「log[10](2)」という答えで分かったつもりになるか、「それってどのぐらいの大きさか(約0.3)」まで知らないと実用上分かったことにはならない、という考え方の違いがあるようです。
なので日本の教育では『電卓を使う』ことは教えませんが、アメリカの教育では電卓が必須のようです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!