- 締切済み
エクセルでのlog逆算方法教えて
エクセルで計算していますが、逆算の方法を教えて下さい。 40,000,000=A+(A*(15.741-1.305*log(A)) になります。 逆算してAをもとめたいのですが・・・。 急いでいます。助けて下さい。 たけこ
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- info22_
- ベストアンサー率67% (2650/3922)
#3,#4です。 補足の訂正での再質問の回答 >40,000,000=A+(A*(15.741-1.305*log(A/1000)) 対数についてのコメントがありませんでしたので 対数の底がeの自然対数の場合と底が10の常用対数の場合について回答します。 今度はlogが自然対数の場合も常用対数の場合もAの実数解が2個ずつ存在します。 右辺の曲線f(A)=A+(A*(15.741-1.305*log(A/1000)) (a>0) は最大値を与えるAをAmaxとするとA<Amaxではf(A)が単調増加関数、Amax<Aではf(A)は単調減少関数であり,f(Amax)>>40000000(左辺)なので 0<A<Amaxの範囲に実数解が1個、Amax<Aに実数解が1個の2個ずつ方程式を満たす解が存在します。 自然対数の場合の数値計算による解は A=7972596.582844926,A= 340561170.19744 となります。また 常用対数の場合の数値計算による解は A=3291986.7456750428, A=6735230851791115.4 となります。 方程式の右辺にこのAの値を代入して見て左辺と殆ど同じになるかチェックしてみると確かに解であることが確認できるでしょう。
- LHS07
- ベストアンサー率22% (510/2221)
再アップしました。 エクセルでの式の入力方法を覚えれば簡単にできると思います。
- info22_
- ベストアンサー率67% (2650/3922)
#3です。 常用対数の場合の最大値より小さい方のAの数値計算値の方を書き忘れました。 A=5000777.61607…
- info22_
- ベストアンサー率67% (2650/3922)
対数を自然対数とすると f(A)=右辺=A+(A*(15.741-1.305*log(A)) (A>0)とおくと f'(A)=15.436-1.305*log(x) A<137084.4571509238でf'(A)>0でf(A)は単調増加 A>137084.4571509238でf'(A)<0でf(A)は単調減少 f(A)の最大値はf(137084.4571509238)=178895.2165819558<<40000000 従って 40,000,000=A+(A*(15.741-1.305*log(A)) を満たす実数A(>0)は存在しません。 対数が常用対数だったとすると f(A)=右辺=A+(A*(15.741-1.305*log(A)/log10) (A>0)とおくと f'(A)=16.17424570111626-0.56675429888374*log(x) A<2.4777523012805981*10^12でf'(A)>0でf(A)は単調増加 A>2.4777523012805981*10^12でf'(A)<0でf(A)は単調減少 f(A)の最大値はf(2.4777523012805981*10^12)=1.4042771574538506*10^12>>40000000 従って 40,000,000=A+(A*(15.741-1.305*log(A)) を満たす実数A(>0)は1個のみ存在します。 数値計算で求めると A=6735160344677.78965… となりました。
お礼
ありがとうございます。 難しい(><;ですね・・ 参考にします。 また宜しくお願いします。
- rnakamra
- ベストアンサー率59% (761/1282)
答えがほしいだけならWolframAlphaで解かせたほうがはやそう。 見るからに答えが複数ありそうなので下手にニュートン法なんか使うと答えが1個出てきて安心してそこで終わってしまう可能性大。 logが常用対数だった場合にWolframAlphaで解いたものを参考URLに示しておきます。
お礼
早速のご回答ありがとうございました。参考にします。
- LHS07
- ベストアンサー率22% (510/2221)
Excelで作りました。
お礼
ありがとうございました。 間違いがあり 40,000,000=A+(A*(15.741-1.305*log(A/1000))でした。 出来ればもう一度お願いします。
お礼
ありがとうございました。 間違いがあり 40,000,000=A+(A*(15.741-1.305*log(A/1000))でした。 出来ればもう一度お願いします。
補足
間違っていました。 40,000,000=A+(A*(15.741-1.305*log(A/1000))でした。 もう一度お願いします。