查看单个帖子
旧 2009-03-16, 21:34   #2
evaline.duan
初级会员
 
注册日期: 2009-02-25
年龄: 37
帖子: 5
声望力: 0
evaline.duan 正向着好的方向发展
问题 回复: [求助]怎样求和含有未知数的表达式?

Thanks a lot. 自己试着编写了类似程序:
syms x;
y=0;
p=0;
syms x;
while (p<10)
p=p+1;
y=y+trimf1(x,[p p+1])
end;
solve(y-0.25),显示出每一步y的表达式为:
y =

(x-2)/(x-1)

y =

(x-2)/(x-1)+(x-3)/(x-2)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)+(x-6)/(x-5)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)+(x-6)/(x-5)+(x-7)/(x-6)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)+(x-6)/(x-5)+(x-7)/(x-6)+(x-8)/(x-7)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)+(x-6)/(x-5)+(x-7)/(x-6)+(x-8)/(x-7)+(x-9)/(x-8)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)+(x-6)/(x-5)+(x-7)/(x-6)+(x-8)/(x-7)+(x-9)/(x-8)+(x-10)/(x-9)

y =

(x-2)/(x-1)+(x-3)/(x-2)+(x-4)/(x-3)+(x-5)/(x-4)+(x-6)/(x-5)+(x-7)/(x-6)+(x-8)/(x-7)+(x-9)/(x-8)+(x-10)/(x-9)+(x-11)/(x-10)
输入solve命令:solve(y-0.25)后,结果却显示:
x =

1.0786898967617613085887798657648
2.0855661586263124742606885245834
3.0901392962871015446663250353338
4.0940124115549277509671954064637
5.0977113712866084211968191987618
6.1015696954689081199203797592360
7.1059563518414547306012042485634
8.1115164312857313681455235886801
9.1199593222558947264347081304284
10.140520090272325196244017267826
明显和方程式x的求解值不符么,按计算,y的求解值x不会这么多的吧,应该只有一个的么,怎么会有这么多呢?不知matlab是怎么计算的,为什么计算出来不是我想要的答案呢?
恳请高手指点!:lovely:
evaline.duan 当前离线   回复时引用此帖