当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

作者:精品下载站 日期:2024-12-14 04:53:30 浏览:15 分类:玩电脑

Matlab 中的循环 |学习 Matlab 中各种类型的循环


[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

Matlab 循环简介

在本文中,我们将学习 Matlab 中的循环。 MATLAB 最初开发的重点是数学模拟,非常适合处理向量和矩阵中的静态数值数据。但它现在可以从平面文件、数据库、云存储、数据采集硬件甚至实时金融数据源中读取数据。 MATLAB在数据科学领域的能力非常强大,目前已广泛应用于许多不同的行业。

在所有计算机编程语言中,都存在一些用于重复执行指令的“循环”语句。更具体地说,LOOPS 允许编码器编写较短的代码,绕过某些重复代码集到条件循环中。本质上,循环是一组重复执行的指令,直到达到某个条件或只要满足某个条件。

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

MATLAB 中的循环

MATLAB 使用 for 循环和 while 循环。还有嵌套循环,允许在循环内使用 for 或 while 循环。

FOR循环

当一组指令要执行的迭代次数已知时,使用 FOR 循环。因此,只要满足特定条件,它就用于重复执行代码。该条件在 FOR 循环的开始处定义,也称为 FOR 循环的初始化。 MATLAB 中 for 循环的语法如下:

语法:

for index = value
…
program statements
… ;
end

值可以是以下形式之一:

1. 初始值:最终值

将索引变量从初始值到最终值加1,并重复执行程序语句,直到索引大于最终值。

for a = 10:20
fprintf(‘value of a: %d\n’, a);
end

输出:

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

2. 初始值:步长:最终值:

每次迭代时按值步长增加索引,或者当步长为负数时减少索引。

代码:

for a = 1.0: -0.1: 0.0
disp(a);
end

输出:

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

3. valArray

在每次迭代时从数组 valArray 的连续列生成列向量索引。循环执行n次,n是valArray的列数,由numel(valArray, 1, :)设置。输入 valArray 可以是任何 MATLAB 数据类型,包括元胞数组、字符串或结构体。

代码:

for a = [12, 14, 52, 61, 72]
disp(a);
end

输出:

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

WHILE循环

只要指定的条件为真,while 循环就会重复执行语句。 while 循环的语法如下。

语法:

while <condition>
…
program statement
… ;
end

当结果不为空并且包含所有非零元素(逻辑或实数值)时,条件为真。否则,条件为假。条件的比较值在 while 循环开始之前定义,比较条件在 while 循环初始化时设置。

例如,让我们采用与第一个 for 循环示例相同的条件。请注意使用 while 循环如何改变结构。

代码:

a = 10;
while ( a < 20 )
fprintf(‘value of a: %d\n’, a);
a = a+1;
end

这里在开始循环之前设置了'a'的初始值,循环中设置的条件是'a'应该小于20。然后'a'加1,只要a重复循环一次

输出:

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

由于 a=20 时条件为 False,因此循环内的代码不会执行。因此,输出仅显示 10 到 19 之间的 a 值。

嵌套循环

这意味着在另一个循环中使用一个循环。它可以在另一个 for 循环中使用一个 for 循环,或者在另一个 while 循环中使用一个 while 循环来创建复合语句。生成的循环必须满足两个条件。即先检查外层循环中的条件,如果为 True,则检查第二个嵌套循环中的条件。这使得程序员能够完成比简单的数字或布尔测试更复杂的条件编程。

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

例如,显示 1 到 100 之间所有素数的程序如下。

代码:

for i = 2:100
for j = 2:100
if (~mod(i,j))
break;
end
end
if (j > (i/j))
fprintf(‘%d is prime\n’, i);
end
end

输出:

[玩转系统] Matlab 中的循环 |学习 Matlab 中各种类型的循环

......依此类推,直到质数 97。

Matlab 中的循环控制语句

控制语句是控制循环体执行的条件组合,直到指定的条件变为 False。控制语句还指导循环的语法。例如,在 while 循环中,比较值是在循环初始化之前定义的,而在 for 循环中,值条件是在初始化循环时在 for 语句中定义的。

最重要的是,循环控制语句用于控制循环的执行或更改正常命令序列的执行。 MATLAB 支持两种特定的循环控制语句:“break”语句和“continue”语句。这些命令在其他编程语言中也有类似的使用。

中断声明

Break 命令终止 for 或 while 循环的执行。循环中在break语句之后编写的语句将被跳过/不执行。在嵌套循环的情况下,break 仅从遇到它的循环中退出。然后控制权传递到循环结束后的语句。

继续声明

continue 命令用于将控制权交给循环的下一次迭代。 continue 语句的作用与break 语句类似。 “继续”不是强制终止,而是跳过中间的任何代码并强制执行循环的下一次迭代。

结论

MATLAB 允许在代码中使用各种类型的循环来处理循环要求,包括:for 循环、while 循环和嵌套循环。还有特定的循环控制语句来控制这些循环的执行。为重复语句创建循环是缩短最终代码的好方法。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯