MATLAB知识点:循环语句中的break 和 continue 关键字

 ​讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​

MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili


节选自​第4章:MATLAB程序流程控制

break 和 continue 也是MATLAB中的关键字,它们可以更加灵活地控制循环过程的执行。在MATLAB中,break和continue只能与for循环或while循环一同使用,不能用于其他场合。下面我们来简要介绍一下 break 和 continue 的用法:

  • break关键字用于终止执行 for 或 while 循环。实际使用中,当满足某个条件时,我们会使用break立即退出循环。这在找到所需结果后立即退出循环的场景非常有用。

  • continue关键字用于跳过循环的当前迭代,然后继续下一次迭代。实际使用中,当满足某个条件时,continue 将跳过当前循环迭代的剩余部分,然后继续进行下一次迭代。这对于在某些情况下跳过特定的迭代非常有用,而不必完全退出循环。

下面我们来看两个简单的案例:

(1)已知y\left( n \right) \,\,=\,\,1+\frac{1}{2}+\frac{1}{3}+\cdots +\frac{1}{n} ,当n最小取多少时, y的计算结果大于10?这个例子在while函数中出现过,下面我们尝试使用for循环求解。

y = 0;
for n = 1:1e8
    y = y + 1/n;
    if y > 10
        disp(n)
        break  % 退出for循环
    end  % if配套的end
end  % for配套的end

使用for循环需要通过向量或者矩阵给出循环的次数,由于我们这个问题的循环次数是未知的,因此可以预先给一个很大的循环范围,我们这里给定n为1至1×10^8构成的向量。

如果在循环体中找到了我们所需的结果(即y大于10),就可以通过break关键字退出循环。通常情况下,判断条件是否成立需要用到if语句。

(2)使用循环输出1至10中所有的奇数。

for i = 1:10
    if mod(i, 2) == 0
        continue
    end
    disp(i)
end

在每次迭代中,使用mod(i, 2)来检查 i 是否为偶数。如果 i 是偶数,那么 mod(i, 2) 的结果将为0,这时会执行continue,直接跳到下一次迭代,因此当i为偶数时,代码后面的disp(i)不会被执行;只有i为奇数时才会被输出。

思考:如果不使用continue关键字,代码应该如何修改?

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值