标题:分段函数的问题
只看楼主
pepermint
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-30
 问题点数:0 回复次数:4 
分段函数的问题

初学matlab,请求大家指点,谢谢!
一个分段函数,但循环里面的语句不能执行,不知道为什么?

clear;
x=-2:0.02:2;
y(length(x))=0;
if abs(x)>1.1
y=1.1*sign(x);
else if abs(x)<=1.1
y=x;
end
end
plot(x,y);

[此贴子已经被作者于2007-8-31 9:17:24编辑过]

搜索更多相关主题的帖子: 函数 分段 abs matlab length 
2007-08-31 09:14
seidel
Rank: 4
等 级:贵宾
威 望:11
帖 子:217
专家分:20
注 册:2007-1-31
得分:0 

这位小弟真逗,你说的循环语句是哪句啊!我就看到了一个条件语句,没有循环语句啊!~~~


究竟离别只是一场退出还是美好记忆的延续,    最美好的爱究竟是成全还是守候?
2007-08-31 10:58
pepermint
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-8-30
得分:0 
回复:(pepermint)分段函数的问题

说错了,是if语句不执行

2007-08-31 11:28
ydgsl
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:107
专家分:20
注 册:2006-9-20
得分:0 
clear;
x=-2:0.02:2;
n=size(x,2);
y(length(x))=0;
for i=1:n
if abs(x(i))>1.1
y(i)=1.1*sign(x(i));
elseif abs(x(i))<=1.1
y(i)=x(i);
end
end
plot(x,y);
2007-08-31 15:21
sorrentoo
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-12-12
得分:0 
修改成for循环语句。
下面的程序是对的。

clear;
x=-2:0.02:2;
y(length(x))=0;
a=abs(x);
for i=1:length(x)
if a(i)>1.1
y(i)=1.1*sign(x(i));
else
y(i)=x(i);
end
end
plot(x,y);

格物
2007-08-31 15:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-166658-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.141595 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved