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

例えば r=1.1のとき
A(1)=3
A(2)=3*4.1=3*(3+1.1*1)
A(3)=3*4.1*5.2=3*(3+1.1)*(3+1.1*2)
A(4)=3*4.1*5.2*6.3=3*(3+1.1)*(3+1.1*2)*(3+1.1*3)
A(n) = A(n)*(A(n)+r*(n-1)) 合っているかな?
において
A(n) = p
となるrを計算したい。実際に使用するnは3から5程度なので個別のnで計算(プログラム)しても良い。
高校数学程度なのでしょうが、もう頭が回らなくなっているので教えて下さい。
自分の考えたところは
n=4のとき、s=A(1)、y=A(4)として
p = s*(s+r)*(s+2r)*(s+3r)
両辺の対数をとって
log(p) = log(s)+log(s+r)+log(s+2r)+log(s+3r)
としたとき、log(s+r) をlog(r)の式で表現できれば良いのでしょうが、これで躓いています。

A 回答 (1件)

s=3, r=1.1のような数を用いて



A(n)=Π(i=1,n)[s+r(i-1)]=p  (1)

をs,nが与えられているとき、rを求めることかと思います。

質問者が用いている対数の式は真数の中に未知数rが入っているので計算には役に立たないと思われます。

実際にs,nを与えてA(n)がpに接近するようにrを試行錯誤的に増減させるような数値計算プログラムを作って計算したほうが実際的です。(1)からn次方程式としてn=3,またはn=4の場合についてはカルダノの式またはフェラリの式を用いて解析解を出すのは可能かもしれませんが大体いやになります。数値計算プログラムは数行で済むでしょう。
    • good
    • 0
この回答へのお礼

早速のご返事ありがとうございます。
できないということ了解です。

>>質問者が用いている対数の式は真数の中に未知数rが入っているので計算には役に立たないと思われます。

このような判断が難しいです。1H時間くらい無駄に考えました。
得意の試行錯誤で行います。

お礼日時:2014/03/09 12:21

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