mirongbo 发表于 2009-4-30 17:44

求助,程序的问题

以下的程序运行出现这样的问题,怎么修改?请高手指点,谢谢!
??? Undefined function or method 'aff3' for input arguments of type 'double'.
Error in ==> traprl at 6
    s=s+aff3(x)*aff1(x);


function s=traprl(a,b,M)
h=(b-a)/M;
s=0;
for k=1:(M-1)
    x=a+h*k;
    s=s+aaf3(x)*aaf1(x);
end
s=h*(aff3(a)*aaf1(a)+aaf3(b)*aaf1(b))/2+h*s;

function s3=aaf3(x)
if x<0.5
    s3=x+5;
else
    s3=x-5;
end

function s1=aaf1(x)
if x>=-1 && x<=0
    s1=0.5*(x+1).^2;
elseif x>=0 && x<=1
    s1=0.75-(x-0.5).^2;
elseif x>=1 && x<=2;
    s1=0.5*(x-2).^2;
else
    s1=0;
end

[ 本帖最后由 mirongbo 于 2009-4-30 20:50 编辑 ]

ChaChing 发表于 2009-4-30 19:48

回复 楼主 mirongbo 的帖子

aff3/aff1 or aaf3*aaf1 ??

sogooda 发表于 2009-4-30 20:49

回复 楼主 mirongbo 的帖子

help aff3看看帮助文档,看看aff3的输入有什么要求。

mirongbo 发表于 2009-4-30 20:52

回复 沙发 ChaChing 的帖子

谢谢啊!我也是刚发现那里写错了,不过现在又有问题就是:
??? Input argument "x" is undefined.

Error in ==> aaf3 at 2
if x<0.5
请问怎么解决?

mirongbo 发表于 2009-4-30 20:57

回复 板凳 sogooda 的帖子

谢谢啊!开始函数名写错了,
应该是aaf3,aaf1,所以出现上面的问题,
不过现在又有问题就是:
??? Input argument "x" is undefined.

Error in ==> aaf3 at 2
if x<0.5
请问怎么解决?

ChaChing 发表于 2009-4-30 21:19

LZ怎执行? 我随意试traprl(1,2,10), 是没报错!
还有原帖LZ已修正, 害我2F的帖变成怪怪!
最後一行尚未更正
页: [1]
查看完整版本: 求助,程序的问题