matlab运行后没反映,这个matlab程序运行没反应是怎么回事?在线急等

这个matlab程序运行没反应是怎么回事?在线急等

关注:77  答案:2  手机版

解决时间 2021-02-10 04:27

提问者失夜久伴你

2021-02-09 19:46

function I=trapezia(a,b,eps)

h=b-a;

T1=h*(f(a)+f(b))/2;

while 1

u=h/2;

x=a+u;

H=0;

while xH=H+f(x);

x=x+h;

end

T2=(T1+h*H)/2;

if abs(T2-T1)I=T2+(T2-T1)/3;

break

end

h=u;

T1=T2;

end

function c=dichotomy(a,b,eps)

aa=a;

bb=b;

I=trapezia(a,b,eps);

err=b-a;

while err>=eps

c=(a+b)/2;

if I-f(c)*(bb-aa)==0

break

end

if(I-f(a)*(bb-aa)* (I-f(c)*(bb-aa))<0)

b=c;

else

a=c;

end

err=b-a;

end

a=input('a=');

b=input('b=');

eps=input('eps=')

c=dichotomy(a,b,eps);

fill([a,a,b,b],[0,f(c),f(c),0],'y')

hold on

x=a:0.001:b;

y=f(x);

plot(x,y,'b')

plot([c,c],[0,f(c)],'r:')

string=['c=',num2str(c)];

text(c,0.03,string)

title('定积分中的几何意义')

hold off

显示出来是这个错误 不知道什么意思

Error in ==> C:\MATLAB6p5\work\trapezia.m

On line 2 ==> h=b-a;

最佳答案

二级知识专家过不去的回忆

2021-02-09 20:35

这个程序运行肯定是没反应的 这是一个函数脚本

你要用调用函数的方式,

function I=trapezia(a,b,eps)函数中有三个参数 必须个a b eps 赋值

比方说:我让 a=8 b=9 esp=0.001

然后我再命令窗口输入命令:result=trapezia(8,9,0.01) 回车

(当然你前提是这个函数文件在matlab当前路径)

全部回答

1楼儚迴从偂

2021-02-09 20:50

这代码已经很好了,无须简化。也基本上没有简化空间了。

顶多初始化时用逗号分隔,最后=0下

else if 语句改用case

c语言里可以这样改的,不知在matlab里是不是也通用。

我要举报

如以上信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!

推荐资讯

大家都在看