简单for循环
for循环用来循环处理数据。
例:输出1~100的和
1
2
3
4
5
6
7
8
9
10
|
>> clear >> sum = 0; >> for i = 1:100 sum = sum +i; end >> sum sum = 5050 |
解释:i从1到100,每次增加一个,该共循环100次
注意:分号的位置;不能使用“+=”符号;每写一层循环,必须以end结尾
带有步长的for循环
例:输出1到10之间的奇数和
1
2
3
4
5
6
7
8
9
10
|
>> clear >> sum = 0; >> for i = 1:2:10 sum = sum + i; end >> sum sum = 25 |
解释:i = 1:2:10中间的2表示步长,表示从1到10,每次增加2,即1,3,5,7,9五个数之和;步长也可以为负数
对向量和矩阵的遍历 对向量的遍历
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
>> clear >> A = rand (1,4); >> for i = A i end i = 0.9572 i = 0.4854 i = 0.8003 i = 0.1419 |
解释:rand函数用于随机生成0~1之间的数,rand(1,4)生成1*4的列向量。
对矩阵的遍历
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
>> A = magic(4); >> A A = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 >> for i = A; i end i = 16 5 9 4 i = 2 11 7 14 i = 3 10 6 15 i = 13 8 12 1 |
解释:magic(n)函数用于生成任意一行或一列或主副对角线之和相等的方阵,对矩阵的循环遍历是依次取出矩阵中的每一列元素
break和continue的使用
break用于终止离它最近的一层for循环;
continue用于跳过离它最近的一层for循环,接着执行下一次循环
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
>> x = 1; >> for i = 1:2:10 if i > 7 break else x = x* i end end x = 1 x = 3 x = 15 x = 105 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
>> sum = 0; >> for i = 1:6 if i == 4 continue else sum = sum + i end end; sum = 1 sum = 3 sum = 6 sum = 11 sum = 17 |
多层for循环
for循环可以按照需要进行嵌套。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
>> for i = 1:2:6 for j = 1:3 y = i * j end end y = 1 y = 2 y = 3 y = 3 y = 6 y = 9 y = 5 y = 10 y = 15 |
到此这篇关于在matlab中实现for循环的方法的文章就介绍到这了,更多相关matlab for循环内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/denglavender/article/details/102649093