matlab程序错误Undefined function or variable 'm'. 30

已知Ф=5Ka/s^2+34.5s+5Ka,试计算Ka=200时,系统的性能指标tp,ts,σ%。>>t=0:0.01:2;num=[1000];den=[134.510... 已知Ф=5Ka/s^2+34.5s+5Ka,试计算Ka=200时,系统的性能指标tp,ts,σ%。

>> t=0:0.01:2;
num=[1000];
den=[1 34.5 1000];
[y,x,t]=step(num,den,t);
plot (t,y);
maxy=max(y);
yss=y(length(t));
pos=100*(maxy-yss)/yss;
for i=1:1:201
if y(i)==maxy,n=i;end
end
tp=(n-1)*0.01;
for i=1:1:201
if(y(i)<1.05&y(i)>0.95),m=i;end
break;
end
ts=(m-1)*0.01;
Undefined function or variable 'm'.
展开
 我来答
wacs5
2013-12-10 · TA获得超过1.6万个赞
知道大有可为答主
回答量:3724
采纳率:82%
帮助的人:2826万
展开全部
应当这样说,你的for i=1:1:201没有一个满足if那个条件.
也就是说m=i从来没有被运行过.
所以m这个变量没有定义过.
导致ts那一行引用m会提示没有m这个东西.
追问
我该怎么定义m这个值呢?
追答
关键是你自己想干什么?
你自己要判断如果都没有执行都那一句,你是报错,还是给m赋个值。如果要给m赋值,你可以在for前面加一句:
m=100;
之类的,如果for里面有执行到,那么m的值自动就被修改了,如果没有被执行到,那么m的值就是100
WM_THU
2013-12-10 · TA获得超过7164个赞
知道大有可为答主
回答量:4285
采纳率:80%
帮助的人:3946万
展开全部
首先,这段代码应该保存到一个m文件里运行,而不是直接放到命令行上
其次,m这个变量最好初始化一下,比如在代码第一行加上m=0;
追问
m=0具体位置放在哪好呢 我在.M下打m=0  =上会有棕色光标
追答
m=0句末加分号了吗?”棕色光标“显示的警告信息是什么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式