循环输出变量

for i=1:4 iend1

2

3

其中1:4代表一个行向量1 2 3 4,在matlab中,行向量的另外一个表示方法是[1 2 3 4],即for i=1:4等价于for i=[1 2 3 4],编写程序时牢记一个点:对于某次固定的迭代,i会从这个向量中取一个值,该值可以参与循环中的计算。

运行输出i = 1i = 2i = 3i = 41

2

3

4

5

6

7

8

修改迭代步长

例子:遍历1~10之间的所有奇数

for i=1:2:10 iend1

2

3

其中1:2:10表示迭代从1开始,步长为2,最大不超过10,即代表行向量1 3 5 7 9。备注:步长可以为负值

遍历行向量变量和列向量变量X=rand(1,5);for i=X iend1

2

3

4

X=rand(5,1);for i=X iend1

2

3

4

其中rand(1,5)生成一个1行5列的矩阵,即行向量;rand(5,1)生成5列1行的矩阵,即列向量。生成的向量会存放在变量X中,然后使用for i=X对向量进行遍历。

如果X为矩阵,对矩阵进行遍历X=magic(3);Xfor i=X iend1

2

3

4

5

运行输出

X = 8 1 6 3 5 7 4 9 2i = 8 3 4i = 1 5 9i = 6 7 21

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

其中magic(n)代表魔法函数(任意一行或一列的和值相等)。从运行结果中可以看出,对矩阵的循环就是在每次迭代中,依次取出矩阵的每一列。

终止循环breakX=[2 8 4 3 9 1];for i=X if i==3 disp('3 found'); break; endend1

2

3

4

5

6

7

查找向量X是否含有3,如果有则终止循环。

跳过本次循环continue

X=[5 7 -1 3 -8 6];sum=0;for i=X if i<0 continue; end sum=sum+i;endsum1

2

3

4

5

6

7

8

9

10

计算向量X中所有大于0的数的和。

双重循环和多重循环

双重循环代码X=magic(3);X[row,col]=size(X);for i=1:row disp(['----- row: ', num2str(i),' -----']); for j=1:col disp(['col ',num2str(j),' :', num2str(X(i,j))]); endend1

2

3

4

5

6

7

8

9

运行输出

X = 8 1 6 3 5 7 4 9 2----- row: 1 -----col 1 :8col 2 :1col 3 :6----- row: 2 -----col 1 :3col 2 :5col 3 :7----- row: 3 -----col 1 :4col 2 :9col 3 :21

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

第一重循环遍历每一行,对于其中一行,在第二重循环中对该行进行遍历。在第二重循环中,一般使用X(i,j)这样的形式取出参与计算的值。这里只是对该值做了输出。

三重循环代码toFind=[12,23,9,10];X=magic(3);[row,col]=size(X);for find=toFind disp(['---------- looking ',num2str(find)]); found=0; for i=1:row for j=1:col if X(i,j)==find disp([num2str(find),' found at position (',num2str(i),',',num2str(j),')']); found=1; end end end if found==0 disp([num2str(find), ' not found']); endend1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

运算输出

---------- looking 1212 not found---------- looking 2323 not found---------- looking 99 found at position (3,2)---------- looking 1010 not found1

2

3

4

5

6

7

8

查找toFind向量中每一个值,在X矩阵中是否存在。

while循环

除了以上常用的for循环以外,在matlab中还可以使用while循环,参考doc while。

matlab教程 for循环,Matlab简单教程:循环相关推荐

  1. matlab一亩三分地,Matplotlib简单教程

    Matplotlib简单教程 绘图简介 使用matplotlib库绘图,原理很简单,就是下面这5步: 创建一个图纸 (figure) 在图纸上创建一个或多个绘图(plotting)区域(也叫子图,坐标 ...

  2. ArcEngine简单教程——要素的属性查询、空间查询

    其他教程请见: ArcEngine简单教程汇总 目录 ArcEngine简单教程汇总​​​​​​​ 1 目的 2 概要 空间查询 属性查询 3 关键代码 4小结 ​​​​​​​ 1 目的 实现简单的地 ...

  3. matlab教程 for循环,Matlab for循环使用操作教程分享

    相信不少新手伙伴对Matlab for循环使用操作还不太了解,而下面的这篇文章笔者就专门为大伙分享了关于Matlab for循环使用操作教程,有需要的朋友不要错过哦. 首先安装Matlab, for循 ...

  4. matlab for循环教程,Matlab for循环使用操作教程分享

    Matlab for循环使用操作教程分享 作者:小靖子 来源:PC下载网时间:2020-05-16 09:44:38 相信不少新手伙伴对Matlab for循环使用操作还不太了解,而下面的这篇文章笔者 ...

  5. java for循环 标记_Java for循环

    Java for循环用于多次迭代程序的一部分,或者多次执行同一个代码块.如果迭代次数是固定的,建议使用for循环.java中有三种类型的for循环分别是简单for循环,for-each(增强型for循 ...

  6. Matlab学习一本通,matlab基础教程

    链接:https://pan.baidu.com/s/1uTCbiRfIxcrt6lmiy6_QlQ  提取码:f2dn  Matlab学习一本通,matlab基础教程 <MATLAB R201 ...

  7. 强大的MATLAB机器人工具箱Matlab_Robotic_Toolbox_v9.8及教程

    强大的MATLAB机器人工具箱Matlab_Robotic_Toolbox_v9.8及教程 Matlab_Robotic_Toolbox_v9.8是一个功能强大的机器人工具箱,包含了机器人正.逆向运动 ...

  8. 下载安装Psychtoolbox详细教程【Windows10+Matlab R2020a】

    纵观国内网上关于psychtoolbox的安装教程还是蛮少的,知乎上好像有一篇,简书上有两篇,其他的教程基本就是互相copy或者非常简略,写的比较好的博客也已经是三四年前的了,于是乎,在被ptb折磨了 ...

  9. matlab 蔡旭晖,MATLAB基础与应用教程 蔡旭晖等

    第1章  MATLAB基础知识  1 1.1  MATLAB的发展与基本功能  1 1.1.1  MATLAB的发展  1 1.1.2  MATLAB的基本功能  2 1.2  MATLAB的工作环境 ...

  10. matlab 蔡旭晖,MATLAB基础与应用教程(第2版)/蔡旭晖等

    章  MATLAB基础知识  1 1.1  MATLAB的发展与基本功能  1 1.1.1  MATLAB的发展  1 1.1.2  MATLAB的基本功能  2 1.2  MATLAB的工作环境   ...

最新文章

  1. git服务器搭建问题
  2. IBM开源了5亿行代码数据集,里面最多的编程语言却不是Python
  3. storyboard搭建项目_Storyboard 快速搭建UICollectionView
  4. MySQL数据类型中DECIMAL的作用和用法
  5. 【UWB】Kalman filter, KF卡尔曼滤波, EKF 扩展卡尔曼滤波
  6. Spring IO Platform简介及示例
  7. 情怀成驱动力 网游改编手游能火多久?
  8. 贪心算法-01硬币找零问题
  9. linux搜索关键字并定位,Linux系统中文件定位与查找(示例代码)
  10. java架构分层_java分层架构概念
  11. c9, Performance Monitor Control Register
  12. 移动互联网时代,学iOS开发好吗
  13. Spring 事务管理tx,aop
  14. Photoshop 入门教程「8」如何使用裁剪工具?
  15. 科普 | USB4的全面解读
  16. 今天终于把荣耀6root了_附教程
  17. 画火柴人动画的手机软件_火柴人动漫制作软件下载-火柴人动漫制作手机中文版 v2.1.4_5577安卓网...
  18. Socket网络编程精讲
  19. 细粒度分析综述(Fine-grain image analysis)
  20. 基于SpringBoot搭建应用开发框架(一) —— 基础架构

热门文章

  1. LabVIEW开发实战:Labview简介
  2. 一些基本数字图像处理算法
  3. 九九乘法表java代码_java怎么实现九九乘法表
  4. mysql group_concat拼接字符串长度
  5. 四个免费好用的临时邮箱
  6. python知识图谱关系抽取算法_知识图谱关系抽取之PCNN——tensorflow实现
  7. Fragstats官方教程 [汉译版] 首发预告
  8. 基于ArcGIS和fragstats软件计算景观破碎度(一)
  9. 【初学数据结构系列】 顺序表的实现——通讯录
  10. 尚硅谷redis视频