第6讲-循环结构1

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

程序运行结果: 成绩分别为: 68 75 32 99 78 45 88 72 83 78 分段统计结果:优 1 人,良 2 人,中 5 人,差 2 人
课堂练习与课后作业
• 课堂练习
– 示例1,3,4,5 – 注意:如果做了课堂示例的思考,可不做原题
• 课后作业
– P75:1(4) – 统计1至100之间素数的个数和其和
• 解决不确定循环次数问题 • 解决确定循环次数问题
• 重点难点
– 程序设计的3种基本结构 – While语句语法
1 程序设计的3种基本结构
• 顺序结构
– 程序流程按先后顺序执行,只有执行了前一步,才能执行后 一步。 – 例如火车在轨道上行驶,只有过了上一站点才能到达下一站 点。
• 选择结构
– 分支结构,是指程序流程可以分几条路径执行。 – 例如在一个十字路口处,可以选择向东、南、西、北几个方 向行走。
a =raw_ input('请输入字符,如果输入 # 号则结束输入操作: ') • 如果去掉else:及其后续语句对程序有影响吗?
2.2.2
while语句解决确定循环次数的问题
• 确定循环次数的问题是指循环之前可以预知 循环即将执行的次数
• 为了控制循环次数,通常在程序中设置一个 计数变量,每次循环,该变量进行自增或自 减操作,当变量值自增到大于设定的上限值 或者自减到小于设定的下限值时,循环自动 结束。
示例1 程序
程序运行结果: 请输入若干正整数进行求和操作,当输入负数时结束: 请输入一个整数: 10 请输入一个整数: 20 请输入一个整数: 30
思考A: • 去掉s=0语句会有什么后果?请尝试 • 去掉循环体内的x=input(“请输入一个整数:”)这条语句会有什么后果 • 请帮忙修改曾同学程序中的错误,体会上述两条语句在循环结构程序设 计中的作用
示例 4 编程依次输出列表中各元 素的值。
【分析】 • 本题使用循环结构解决,每 循环一次输出一个列表元素 值 • 由于列表定义后,其长度是 已知的,因此循环次数也是 确定的。
图 4-6 开始 创建列表 a _list a _len, i 赋初值 False
i 小于列表长度吗? True 输出列表元素 i 自增 1
19
示例5-序列应用流程图
开始
20
将10个成绩存放在列表score中 定义a、b、c、d四个变量并全部初始化为0,它们分别 对应优、良、中、差四个等级的人数
对score中每个成绩进行判断,是哪个 等级则对应变量自加1
输出a、b、c、d四个统计结果 结束
示例5-序列应用程序和结果
21
思考并修改程序A: • 用while语句改写程序 • 可以输入任意个分数,并统计分数 分级
• •

银率网贷款计算器图示1
银率网贷款计算器图示2
示例 1
编程从键盘输入若干正整数, 求所有输入整数之和。当输入 整数为负数时,结束该操作。 【分析】
该问题使用循环结构解决, 由于不确定用户即将输入几 个正整数,因此属于不确定 循环次数的问题。
开始 输入第一个整数 x
x >= 0 ? True 将 x 累加到 s 中 输入后续整数 x
False
输出 s 结束 图 4-3 累加若干整数值的框图
结束 依次输出列表元素的框图
示例 4 程序
程序运行结果: 列表的第1个元素是:a 列表的第2个元素是:b 列表的第3个元素是:mpilgrim 列表的第4个元素是:z 列表的第5个元素是:example
注意: • i的初始值设为了0 • i相当于一个指向列表元素的指针
思考,编程并绘制流程图B: • 输入任意个整数,构建列表。根据用户需求进行以下三类操作: 只输出列表中下标为奇数的元素 输出列表中值为奇数的元素的个数和求和 对列表中下标为偶数的元素进行升序排列,下标为奇数的元素保持不 动
– 已知循环次数的:计算 1 + 2 + 3 + … + 100,这是一个级数 求和问题,需要重复执行100次,对100个数依次进行累加。 – 循环次数未知的:给定2个整数,求它们的最大公约数和最小 公倍数。
• Python提供了两种基本的循环结构语句
– while语句 – for语句
2.1 while 表达式: 循环体
• while语句的条件表达式不需要用括号括起来,但是 表达式后面必须有冒号。 • 使用while语句编程通常会遇到两种类型
─ 循环次数事先确定的问题
─ 循环次数事先不确定的问题。
2.2.1 while语句用于不确定循环次数问题
• 循环之前不可预知循环需要执行的次数。 • 循环何时结束由while语句的条件表达式决 定。只有当某条件成立时,循环才会结束 ,否则循环将一直进行下去。
示例 2
编程从键盘输入若干个字符, 一边输入一边输出,当输入“#” 字符时终止该操作。
【分析】 (1)本题使用循环结构解决,每 次循环从键盘输入一个字符,直 到输入为“#”字符时停止循环。 (2)由于输入的字符个数无法确 定,因此循环次数不确定。
否 是
计算机编程导论百度文库
示例2 程序
思考A: • 循环结束后,变量 a 中的值是什么? • 如果循环体中没有下面这条语句会怎么样?
计算机应用基础(III) ——问题求解与计算思维
第5讲 循环结构程序设计
商务信息学院
信息管理系
复习与回顾
• 选择结构程序设计
– 复杂条件表达式 – 复杂的选择结构
• 周度好问题
– 税前收入是什么?应该包括四金?还是去除四 金?
教学目标、重点难点
• 教学目标
– 程序设计的3种基本结构 – 循环结构概述 – While语句
思考1
• 思考并编程:难度级别C。 • 1.请用列表保存税率和速算扣除数,改写 选择结构这一讲的计算税后收入的思考题 • 2.输入单位一批职工的姓名和税前收入, 按格式打印输出该批职工的:姓名,税前 收入,四金,应交税和税后收入。
思考2
• 难度级别:D。需要自行理解相关概念和数学模型意义,选择合适的数据结 构和解题思路。请视风险参与,如以应试为目的同学可不必参与和有压力。 如以实战和兴趣为目的的同学,目前所学基本可以实现,并不要求马上上交 ,可根据教学进度不断完善,私信老师交流进度和困惑。 在百度中搜索“贷款计算器”,参考银率网计算结果。可仅实现以下核心内 容部分,不必制作界面。具体可参见网页或下页PPT内容。 编程实现“贷款计算器”: • 用户输入贷款额、期限和利率, • 选择还款方式为等额本息或等额本金, • 输出为用户在各期(每月)所还的本金、利息、总额和贷款余额。 Python中的金融计算函数可安装Numpy,其中有内置相关函数,在QQ群中已 共享相关模块安装程序和英文版书籍。也可自己编程实现,相关数学模型可 参考网上释义。
示例 3
编程计算1+2+3+…+100 的值。
开始 i 、s 赋初值 1、0
【分析】 • 本题使用循环结构解决,每循 环一次累加一个整数值,整数 的取值范围为1~100。 • 由于整数的范围是确定的,因 此循环次数也是确定的。
i <= 100 ? True 将 i 累加到 s 中 i 自增 1
False
while语句 while 表达式: 循环体 else: 语句
表达式 真(非零)
假(零)
表达式 真(非零)
假(零)
循环体
循环体
Else语句
2.2
while语句注意
• while语句是一个条件循环语句,即首先计算表达式, 根据表达式值的真、假来决定是否继续循环。
• while语句的语法与if语句类似,要使用缩进来分隔 子句。
• 循环结构
– 重复结构,是指程序流程重复执行某一段代码。 – 例如万米跑,围着足球场跑道不停地跑,直到满足条件时( 25圈)才停下来。
1 三种基本结构的流程图
语句A
条件判断

条件判断


语句B

语句B 循环体
语句A
顺序结构 流程图
选择结构 流程图
循环结构 流程图
2 循环结构概述
• 循环结构是一种重复执行的程序结构。实际应用中,常 会碰到一些需要重复执行的步骤,如级数求和、统计报 表等等。例如:
示例5-循环与列表的应用-P37
• 成绩统计问题 • 问题描述:已知10个成绩,请对其进行统计,输出优( 100~90)、良(89~80)、中(79~60)、差(59~0 )四个等级的人数。 • 分析:将成绩存放在列表中。预设四个变量并初始化为0 ,用来存放四个等级的人数。对每个成绩进行判断,属哪 个等级范围就将对应变量值加1。
输出 s 结束 图 4-5 从 1 累加到 100 的框图
示例 3 程序
程序运行结果: 1+2+3+...+100 =5050
注意: • i的初始值设为了1 • s的初始值均设为了0 • 循环结束后,变量i的值是什么? • i的作用: 循环计数变量,控制循环次 数 作为每次被累加的整数值
思考A: • 计算奇数的和,计算 偶数的和
相关文档
最新文档