当型循环和直到型循环

循环结构分当型循环和直到型循环。

当型循环在每次执行循环体前先对控制条件进行判断,当条件满足时,再执行循环体,不满足时则停止;

直到型循环则先在执行了一次循环体之后,再对控制条件进行判断,当条件不满足时执行循环体,满足时则停止。

而两种循环的区别就在于当型循环是先判断后循环;直到型循环是先执行一次循环体,然后再判断是否继续循环;当型循环是在条件满足时才执行循环体,而直到型循环是在条件不满足时才执行循环体。

do loop循环有四种循环,Do While–Loop  ,Do Until–Loop ,Do–Loop While,Do–Loop Until。

其中Do While–Loop 是当型,   Do–Loop Until是直到型,但是我觉得Do Until–Loop不是当型循环。以循环条件为“真”来脱离循环体的才为“直到型循环”。可以将do while理解为变相的当型循环。同理,Do–Loop While也不应该属于直到型。(不知道这里想的对不对)

Do–Loop 和For –Next区别         

(1)For –Next 一般用在循环次数确定的情况下
(2)For –Next中Next i 可以自行给控制变量i 加上步长;而Do–Loop必须自己写控制变量的变化
(3)Do–Loop语句中控制变量的初值往往要放在循环外面设置。

比较:计算s=1+2+…+10

For  i=1 to 10

       s = s + i

Next i

i=1

Do while i<=10

       s = s + i

       i = i +1

Loop

在许多问题中,我们事先并不能确定循环需要执行的次数,这时,我们可以选择Do.Loop循环语句。Do...Loop广义来说是未知类循环,你根本不知道它有多少,要循环多少次,就需要在循环中实时判断退出条件。在Do.Loop循环语句中,可以把循环控制部分放在循环的前面(即前测试循环),也可以放在循环的后面(即后测试循环)。

### until while 循环的程序流程图 #### Until 循环 Until 循环是一种直到循环,在每次迭代结束时测试条件表达式。如果条件为假,则继续执行循环体内的命令;一旦条件变为真,循环终止。 流程描述如下: 1. 执行循环体内的一组命令。 2. 测试条件表达式的真假。 3. 如果条件为假,返回第1步重复执行。 4. 若条件为真,退出循环并继续执行后续代码。 对应的伪代码表示可以写作: ```bash until condition; do command1 command2 done ``` #### While 循环 While 循环则是在每次进入新轮次之前先评估给定的布尔表达式。只有当此表达式的结果为真的时候才允许执行循环内部的操作序列;反之,若一开始即判定为假,则跳过整个循环部分直接往下走。 具体过程如下: 1. 判断条件表达式的真假。 2. 如果条件为真,执行循环体中的指令集。 3. 返回重新检测初始位置处设定的那个逻辑命题的状态。 4. 当某一轮过后发现前提不再满足(即转成‘否’),便离开该层嵌套进而处理其他待办事项。 相应的语法形式为: ```bash while condition; do command1 command2 done ``` 为了更直观地理解这两种不同类循环机制之间的差异,以下是它们各自的简化版流程图表展示方式[^1]。 对于 **Until** 类来说,图形化呈现会像这样: ``` +-----+ | | v 否 | 是 +--------+------+ v | | | 结束 | 命令列表|<-----+ | | +--------+------+ ^ | 开始/再次尝试 ``` 而针对 **When (While)** 形态而言,其可视化布局可能是这样的: ``` +-------+ | | v | 否 +---------+ 条件? +----------+ | ^ | | 是 | | | v v +-------------+ +--------------+ | | | | | 命令列表 |<----->| 继续检查条件 | | | | | +-------------+ +--------------+ ``` 通过上述对比可以看出两者的主要区别在于何时以及如何决定是否应该继续运行循环主体的内容。
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值