-2
写MATLAB代码来计算和确定的收敛速度:计算和确定收敛速度
(exp(h)-(1+h+1/2*h^2))/h with h=1/2, 1/2^2,..., 1/2^10
我的代码是:
h0=(0.5)^i;
TOL=10^(-8);
N=10;
i=1;
flag=0;
table=zeros(30,1);
table(1)=h0
while i < N
h=(exp(h0)-(1+h0+0.5*h0^2))/h0;
table (i+1)=h;
if abs(h-h0)< TOL
flag=1;
break;
end
i=i+1;
h0=h;
end
if flag==1
h
else
error('failed');
end
我得到的答案没有任何意义。请帮忙。
一个错误我在代码看到的是,使用了'H0 =(0.5)^ i'这意味着'H0 =(0.5)^√-1;'这意味着'H0 = 9.7656e- 04'。我想你想用'h0 = 0.5'。寻求调试帮助的问题(*“为什么这个代码不工作?”)必须包含所需的行为。告诉我们你的预期答案是什么! –