我的答案
一、程序
function x= myeq(a, b)
x = fzero(@(x) myfun(x,a,b),[0,100] )
function f = myfun(x,a,b)
f = a.*exp(-7.8.*x) -b.*x
以上两个程序是分别存放在两个.m文件中的。
二、以a=1, b=10为例展示方程的详细求解过程
>> x=myeq(1,10);
f =
1
f =
-1000
f =
-0.540237649001660
f =
-0.045644888939780
f =
2.596009671784749e-006
f =
-1.013789130421827e-008
f =
-2.220446049250313e-015
f =
4.440892098500626e-015
最终得到方程的近似解
x = 0.061767764689359
三、验算
>> a=1
a =
1
>> b=10
b =
10
>> f=a.*exp(-7.8.*x)-b.*x
f =
-2.220446049250313e-015
如此小的误差说明近似解足够精确!