首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

数学方程式求解解决办法

2012-02-04 
数学方程式求解a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)SUM

数学方程式求解
a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)=SUM

其中a,b,c,SUM都是已知数,求x的值

主:^(b+c)之类是表示指数,且指数大于0

求解

比如:
100*(1+X)^12+100*(1+X)^11+100*(1+X)^10+100*(1+X)^9+100*(1+X)^8=1000

求X的值?
(a=100,b=7,c=5,sum=1000)

数学方法或者程序方法都行

哈哈 学的都忘了

[解决办法]
你先把X=多少,写出来吧,剩下的就是公式函数算吗
[解决办法]
高阶多项式的根好像不太好求,都忘光了

不过如果可以的话你可以试试Matlab。
[解决办法]

Delphi(Pascal) code
先把a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)做成一个函数:function sum(a,b,c,x:integer):inetger;然后循环x:for x:=0 to 100 do  if sum(100,7,5,x)=1000 then  begin    输出x    break;  end;
[解决办法]
a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)=SUM
先简化一下,变成标准等差数列:
(1+x)^(b+1)+(1+x)^(b+2)+....+(1+x)^(b+c)=SUM/a
首项:(1+x)^(b+1)
公比:(1+x)
项数:c
所以有:
(1+x)^(b+1)*x^(c-1)=SUM/a

然后由程序代入求值吧

[解决办法]
等比数列求和公式应该是
S=a1*(1-q^(n+1))/(1-q)吧?
a1:首项
q:公比
n:项数
S:和
在本题中,应该就是
[(1+x)^(b+1)]*[1-(1+x)^(c+1)]/(-x)=sum/a
化简为
[(1+x)^(b+1)]*[(1+x)^(c+1)-1]=x*sum/a

x=a * [(1+x)^(b+1)]*[(1+x)^(c+1)-1] / sum
然后可以用迭代法求出x。具体步骤是,
Step1:随便取一个x[0] (比方说令x[0]=1,或者用其他方法给出一个比较接近答案的x[0])
Step2:x[i+1]= a * [(1+xi)^(b+1)]*[(1+xi)^(c+1)-1] / sum
Step3:如果x[i+1]与x[i]足够接近,则认为x[i+1]就是所求的x,否则反复执行Step2。

[解决办法]
提出共项
a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)=SUM
<=>(1+X)^(b+c)+(1+x)^(b+c-1)+(1+x)^(b+c-2)+......+(1+x)^(b+2)+(1+x)^(b+1)=SUM/a
<==>(1+x)^b*(1+x)^c+(1+x)^b*(1+x)^c*(1+x)^-1+(1+x)^b*(1+x)^c*(1+x)^-2+.....+(1+x)^b*(1+x)^2+(1+x)^b*(1+x)^1=SUM/a
<==>(1+x)^b*((1+x)^c+(1+x)^c*(1+x)^-1+(1+x)^c*(1+x)^-2+......+(1+x)^2+(1+x))=SUM/a
<==>(1+x)^c+(1+x)^c*(1+x)^-1+(1+x)^c*(1+x)^-2+......+(1+x)^2+(1+x)=SUM/a/(1+x)^b
<==>(1+x)^c*((1+x)^-1+(1+x)^-2+......+(1+x)^-N+1+(1+x)^N)=SUM/a/(1+x)^b (当(1+x)^N=(1+x))
<==>(1+x)^-1+(1+x)^-2+......+(1+x)^-N+1+(1+x)^N=SUM/a/(1+x)^b/(1+x)^c (当(1+x)^N=(1+x))
<==>a*(1+x)^b*(1+x)^c*((1+x)^-1+(1+x)^-2+......+(1+x)^-N+1+(1+x)^N)=SUM (当(1+x)^N=(1+x))


[解决办法]
探讨
引用:

Delphi(Pascal) code
先把a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)
做成一个函数:
function sum(a,b,c,x:integer):inetger;
然后循环x:
for x:=0 to 1……

[解决办法]
这实际上是一个等比数列的求和问题:
计算公式如下:
1+q+q^2+q^3+...+q^(n-1)+q^n=1*(1-q^n)/(1-q)

以上计算a*(1+X)^(b+c)+a*(1+x)^(b+c-1)+a*(1+x)^(b+c-2)+......+a*(1+x)^(b+2)+a*(1+x)^(b+1)=SUM
可设1+X=q b+1=m b+c=n SUM/a=y ,则以上计算可表示为:
q^m+q^(m+1)+...+q^n=y

代入公式中可得 q^m*(1-q^(n-m+1))/(1-q)=y
q^m*(1-q^c)/(1-q)=y
q^(b+1)*(q^c-1)/X=(SUM/a)
[解决办法]
学习,数学几乎丢光了 -_-
[解决办法]
逐次逼近法
[解决办法]
用matlab轻松搞定

热点排行