循环结构(while循环和do-while循环)

循环结构通常由三部分组成:初始化循环体循环条件

其中初始化部分有时在控制的逻辑结构中不进行显式的表示。

循环结构主要有两种形式:while循环结构do-while循环结构

while循环:先判断条件P,若成立,则执行循环体A,然后再去判断循环条件,否则控制流就会退出重复结构,如下图(1)所示。

do-while循环:先执行循环体A,再判断条件P。若成立,则继续执行A,然后再判断条件P,否则控制流就退出循环结构,如下图(2)所示。

图(1)while型循环结构图

图(2)do-while循环结构图

### PAD图中的循环结构及其用法 #### 什么是PAD图? PAD(Problem Analysis Diagram)是一种用于描述算法程序设计的图形化工具。它通过嵌套框的形式表示程序逻辑,层次分明,易于理解实现[^1]。 #### 循环结构在PAD图中的表现形式 在PAD图中,循环结构通常表现为一种带有条件判断的重复操作区域。具体来说,循环体位于一个矩形框内,而该框上方或下方会标注控制循环执行的条件表达式。如果条件成立,则继续执行循环;否则退出循环并进入后续处理部分。 #### 示例分析:DO WHILE循环 以下是一个基于给定伪代码绘制对应PAD图的过程说明: 定义变量:i=7,S=0 DO WHILE i<=1000 IF (i 被 7 整除) THEN S = S + i 输出: i ENDIF i = i + 1 ENDDO 输出: S ##### 对应的PAD图构建过程 1. **初始化阶段**: 首先设置初始值 `i=7` 累加器 `S=0`。 2. **循环头部**: 创建一个带条件 `(i <= 1000)` 的循环头节点。 3. **分支判断**: 在每次迭代内部加入一个新的子层来完成对当前数是否能被7整除(`i mod 7 == 0`)这一命题测试。 4. **更新动作**: 如果满足上述条件则增加相应数值到总,并打印这个数字本身。 5. **计数器递增**: 不管前面的结果如何都需要让索引变量向前推进一步即 `i++`. 6. **最终汇总**: 当跳出整个循环之后再单独显示累积得到的大致结果也就是最后求得的那个总数目量级上的东西——这里指代的是所有符合条件项相加之。 以下是此场景下的简化版PAD图表展示方式: ```plaintext +-----------------------------------+ | 初始化 | | i <- 7, S <- 0 | +-----------------------------------+ ↓ +-----------------------------+ | 条件 |<----+ | 是否有(i ≤ 1000)? | | +-----------------------------+ | | Yes No | v v +-------------------------------+ End of Program | 分支 | | 若(i % 7 == 0): | | 更新(S += i), 打印(i)| | 更新(i++) | +-------------------------------+ ``` 以上就是按照所提供的伪代码所转换出来的基本框架示意版本[^4]。 #### Python 实现示例 下面提供了一个简单的Python脚本作为验证手段之一,用来模拟刚才讨论过的那个特定例子的行为模式: ```python def pad_example(): i = 7 S = 0 while i <= 1000: if i % 7 == 0: S += i print(f"Output {i}") i += 1 print(f"Sum is {S}") pad_example() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值