(共17张PPT)
第五课 循环结构的程序设计
——for循环
Python程序设计
无论内容怎样复杂、功能如何强大的程序,都是由基本的结构组合而成的,这些基本的结构称为“程序的控制结构”。Python程序的基本结构只有三种,即顺序结构、分支结构和循环结构。
通过本单元的学习,借助实例理解三种基本结构的概念和执行流程,掌握三种基本结构的程序设计方法。
顺序结构
分支结构
循环结构
Python程序基本结构
2
程序的循环结构是程序设计中常用到的基本结构之一。循环是让计算机自动完成重复工作的常见方式。for循环、while循环、循环嵌套、循环控制等都是程序循环结构的主要内容。
本课学习任务:
了解循环结构,掌握for循环的语句格式和执行流程,初步掌握range()函数格式及功能,能够编写简单的for循环程序。
3
一、for 循环语句:
for循环语句的一般格式是:
for 循环变量 in 列表:
<循环体>
[else:
语句块]
4
注意:
1、for循环依次把列表中的每个元素逐个迭代出来。
2、for循环所包含的语句以缩进为标志。
3、列表可以有几种表达方式。
4
若a=[1,2,3,4,5],则3 in a _____________(填True或False)
1、循环变量 in 列表-------->是一个关系表达式
5
注意:
1、for循环依次把列表中的每个元素逐个迭代出来。
2、for循环所包含的语句以缩进为标志。
3、列表可以有几种表达方式。
6
3、列表可以有几种表达方式。
(1)直接罗列的方式。
(2)先定义后使用的方式。
(3)使用range函数。
range()函数是让Python从指定的第一个值开始数,并在到达所指的第二个值后停止,因此不包含第二个值。如range(1,6)是生成一个1~6的整数,但不包含6,也就是1~5.
【练习一】:以下三个程序.
7
二、range( )函数:
range()函数
格式:range ( [start,] stop [,step] )
功能:创建一个整数列表
参数:起始值(缺省为0),终值(但不包括),步长(缺省为1)
【练习二】:输出0~10.
【练习三】:输出1~10.
【练习四】:输出1~10的所有奇数.
8
二、range( )函数:
【练习五】:输出1~99的所有数的和。
【练习六】:输出0~100的所有偶数的和。(这个程序要自己设计)
9
for循环的应用实例
通过“国际象棋棋盘上麦粒问题”的程序实例,理解for循环的语句格式和执行流程,理解程序中累加器的作用,能够编写比较复杂的for循环程序。
学习任务
11
在印度有一个古老的传说:国王打算奖赏发明了国际象棋的大臣。国王问他想要什么,他对国王说:“陛下,我只要一些麦粒。请您在这张棋盘的第1个小格放1粒麦子,第2个小格放2粒,第3个小格放4粒,第4个小格放8粒,以此类推,直到把64格棋盘放满就行了。”国王觉得这个要求太容易满足了,就答应给他这些麦粒。当人们把一袋一袋的麦子搬来开始计数时,国王才发现:就算把全印度甚至全世界的麦粒都拿来,也满足不了他的要求。
那么,这位大臣要求得到的麦粒到底是多少呢?
12
12
“第一个小格放1粒麦子,第2个小格放2粒,第3个小格放4粒,第4个小格放8粒,以此类推,直到把64格棋盘放满就行了。”
发现规律:第一个小格放1粒麦子,后面的每一格是前一格的2倍。
若用 i 表示当前所处格子的序号,变量 p 表示此格子中存放的麦粒数,变量 s 表示累加得到的麦粒数,那么相关数据关系如下图。
13
一、分析问题:
13
14
二、设计算法:
三、编写代码:
【练习九】:国际象棋棋盘上麦粒问题
14
15
【练习十】:寻找100~1000之间的水仙花数。
水仙花数是指一个三位数,它每个数位上的数的3次幂之和等于它本身。例如:153是水仙花数,因为13+53+33=153。完善以下代码,并在编辑器运行。
16
下节课见!