PDA

查看完整版本 : [MATLAB基础] 用for循环编写一个简单的绘制分段函数图像程序出错,寻高手指点!


molayu
2010-03-04, 20:25
刚刚开始学习MATLAB,想用for循环编写一段代码绘制一个简单的分段函数的图像,代码如下
dx=35/300;
x=[-5:dx:30];
for k=1:length(x)
if x(k)>=9
y(k)=15*sqrt(4*x(k))+10;
elseif x(k)>=0
y(k)=10*x+10;
else
y(k)=10;
end
end
plot(x,y),xlabel('x'),ylabel('y')

运行后出现如下错误提示:??? In an assignment A(I) = B, the number of elements in B and
I must be the same.

望各位高手指点一二,小弟在此谢过!!

ps:经过检查已经发现问题,就是y(k)=10*x+10这一句的x应该改为x(k),只是还是不清楚那句错误提示是什么意思呢?

mathjiang
2010-03-18, 16:19
In an assignment A(I) = B, the number of elements in B and
I must be the same.

I 的尺寸 = B 的尺寸,才能做赋值运算 A(I)=B.

在语句 y(k)=10*x+10 中,右边是向量,左边是标量,不能做赋值运算。