首页/文章/ 详情

matlab流程控制 二

3年前浏览1530
  微信图片_20210415164934.jpg

        过冷水给大家介绍了matlab编程中三个最基本也是最重要的三个流程控制方式,即:顺序执行(最基础),循环执行(for...end, while...end),选择执行(if...end, switch...case...end)。灵活地运用后面两种控制能高效地帮助解决很多实际问题。除了这三种最基本的方式, 再给大家介绍几种。

continue和break

continue和break经常在matlab的循环执行中使用,而各自具有不同的作用。

continue语句:结束本次循环,转入下一次循环执行,不会跳出本层循环;

break语句:结束本层循环,转入外层循环执行。若无外层循环,则按顺序执行循环下方语句。

图片

pause

pause,顾名思义就是暂停的意思。其作用是暂停当前程序的执行,延迟特定时间或等待按键之后才会继续执行程序。

其调用格式如下:"pause(n);" 其中n为暂停的时间,单位为秒,或者直接"pause;",该方式需要有按键输入程序才会继续执行。

pause函数非常有用。例如,想显示plot函数的绘图过程,由于一般情况绘制过程几乎是瞬间完成,根本没法看清楚,这里加个pause(x), x为欲暂停时间。具体使用方法见本公众号文章“matlab流程控制(一)”,在微信聊天输入“007”即可快速查看。

return

return,即返回的意思,一般放在函数的结尾,return具有强制结束程序运行作用。与for循环连用可以达到while循环的效果,当然没有这个必要。MATLAB调用函数正在运行时,使用return语句可以强制结束调用,或在满足某条件时强制退出此函数的运行,并返回主调函数和键盘。大家可以试一下下面的示例,得g的结果等于5,而不是11.

x = 0:10;
g = 0;
for k = x
   if k >= 5
       return;
   end
   g = g 1;
end

try...catch...end

try-catch-end本质上是一种选择执行,但这个有别于if和switch,它是matlab提供的一种代码执行过程中错误捕获机制。一个优秀程序不仅要能解决当下的问题,还能有延展性,考虑程序运行过程可能会遇到的各种情况,而try-catch-end就提供了一种选择。其调用格式如下:

try

语句a;

....

catch

语句b;

...

end

以上格式的意思是,如果try与catch之间的代码正确则执行a段代码,反之则执行b段代码。

clc;clear all
A = ones(2,3);
% 生成2*3的1矩阵
B = ones(2,3);
% 生成2*3的1矩阵
try 
Re = A*B;
% 2*3的矩阵不能2*3的矩阵叉乘
disp('执行A段');
catch
% 这里采用点乘
Re = A.*B;
disp('执行B段');
end

本期过冷水进一步完善了流程控制过程中的方法,让流程控制更加丰富。

原创文章,作者过冷水,未经授权,禁止私自转载,转载请联系作者,如果您希望加入Matlab仿真秀官方交流群和资料下载可加群:927550334

精品回顾>>>>>>

matlab绘制农夫过河动态图

用matlab实现复杂累计求和的展开(程序分享)

Matlab 做重要性抽样 含代码

MATLAB/ADAMS求解动力学

Simulink电力电子技术建模和仿真

微信图片_20210415171219.jpg

科普理论代码&命令MATLAB
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2021-04-15
最近编辑:3年前
过冷水
博士 | 讲师 讨论号:927550334
获赞 358粉丝 180文章 107课程 11
点赞
收藏
作者推荐

免费 5.0
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈