Matlab 版 (精华区)

发信人: zjliu (秋天的萝卜), 信区: Matlab
标  题: [合集]如何终止子函数的执行
发信站: 哈工大紫丁香 (2003年05月27日18:05:58 星期二), 站内信件


────────────────────────────────────────
 qizq (快乐、踏实地过好每一天)        于 2003年05月22日14:56:05 星期四 说道:

在子函数中对于输入量进行设定,如果不符合条件的,则跳出子函数的执行,如何操作
?谢谢!

────────────────────────────────────────
 zjliu (秋天的萝卜)                   于 2003年05月22日16:39:02 星期四 说道:

用break函数

────────────────────────────────────────
 qizq (快乐、踏实地过好每一天)        于 2003年05月22日16:50:24 星期四 说道:

子函数里面没有for和while循环,我是用if语句判定的。
用break怎么能够终止呢?
程序清单是这样的:
function [m,T]=lift_mass(t)
if t < 0
    disp('选取的时间数值不正确');
break
~~~~~~  在这里用break吗?
end
if t>0 & t<=1.5
    m=135-14.53*t;
    T=33000-17000*t;
else if t>=1.5 & t<=8.5;
        m=118.17-3.31*t;
        T=9130.5-1071*t;
    else
        m=90.035;
        T=7500;
    end
end

────────────────────────────────────────
 zjliu (秋天的萝卜)                   于 2003年05月22日16:58:20 星期四 说道:

我不很清楚你的程序,在这里中止,
你的输出参数m,T可能就没有赋值了,
可能会提示出错,如果你想在这里
中止,试着用nargout函数来控制
输出参数个数吧

────────────────────────────────────────
 qizq (快乐、踏实地过好每一天)        于 2003年05月22日17:05:05 星期四 说道:

我的意思是,一旦输入的参数超出了所允许的范围(这里是说不允许小于零),将提示
错误信息,这是不能输出m和T的值得。
不知道我说明白了没有?

────────────────────────────────────────
 zjliu (秋天的萝卜)                   于 2003年05月22日17:15:11 星期四 说道:

我知道了,可以按你说的作
最好在function [m,T]=lift_mass(t)下面加一句
warning off

────────────────────────────────────────
 sayyou (下一个任务难度颇高)          于 2003年05月22日18:08:32 星期四 说道:

return试试,c语言里是这么用的

────────────────────────────────────────
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.228毫秒