Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2010-03-04, 20:25   #1
molayu
初级会员
 
注册日期: 2010-03-02
帖子: 2
声望力: 0
molayu 正向着好的方向发展
默认 用for循环编写一个简单的绘制分段函数图像程序出错,寻高手指点!

刚刚开始学习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),只是还是不清楚那句错误提示是什么意思呢?

此帖于 2010-03-04 20:37 被 molayu 编辑。 原因: 问题已解决
molayu 当前离线   回复时引用此帖
旧 2010-03-18, 16:19   #2
mathjiang
高级会员
 
注册日期: 2008-01-02
帖子: 247
声望力: 22
mathjiang 正向着好的方向发展
默认 回复: 用for循环编写一个简单的绘制分段函数图像程序出错,寻高手指点!

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 中,右边是向量,左边是标量,不能做赋值运算。
mathjiang 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 21:43


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.