第二单元第7课循环结构课件(33PPT)2021—2022学年青岛版(2019)第三册

资源下载
  1. 二一教育资源

第二单元第7课循环结构课件(33PPT)2021—2022学年青岛版(2019)第三册

资源简介

(共31张PPT)
棋盘与麦粒的故事“第一格放1粒麦粒,第二格放2粒麦粒,第三格放4粒,第四格放8粒,以后每一格的数量都比前一格增加一倍,摆满64格就够了。”国王答应了这个看似微不足道的要求。你能算出这些麦粒的数量吗?宰相进献给国王非常好玩的国际象棋游戏,国王要赏赐宰相,宰相让国王在棋盘上按规律放一些麦粒,赠与自己。
第7课 循环语句(第1课时)
目 录(第1课时)认识循环结构01.掌握for循环02.理解循环变量在循环中的作用03.熟练应用range()函数04.体验算法的巧妙运用05.活动一 初始for循环
活动一初始for循环棋盘与麦粒(故事1)如果每行一粒麦粒,显示64行麦粒的程序如何设计呢?顺序结构:需要一行一行打印64行循环结构:使用for循环初始for循环fori inrange(64):print(“*”)使用for循环语句打印“ * ”:range()序列i是一个自定义变量,每次循环等于___________中的一个数,直到循环结束。range()函数表示产生一个范围,默认从0开始。range(64)产生______的一个范围,循环语句共执行____次。0—6364任务一:阅读P41加油站,回答问题:1.range(64)在循环中的作用?2.程序的流程是如何控制的?初始for循环棋盘与麦粒(step1)如果每行一粒麦粒,显示64行麦粒的程序如何设计呢?(0-63)初始for循环
棋盘与麦粒(故事2)
如果第一格放1个,第二格放2个,第三格放3个......第六十四格放64个,如何按照这一规则打印出64格的麦粒呢?
任务三:
修改程序,打印出64行的麦粒。
改变每行“ * ”的数量可以使用“ * ” * i。
(......共64行)
任务二:
思考如何利用变量i,改变每行“ * ”的数量?
活动二 棋盘与麦粒
棋盘与麦粒棋盘与麦粒(故事3)第1格放1粒麦粒,第2格放2粒麦粒,第3格放4粒,第4格放8粒,以后每一格的数量都是前一格的2倍,如何计算出64格棋盘所放的麦粒总数 *******************************棋盘与麦粒
循环变量i 单格麦粒数n 总数s
0 1 1
1 n=2**1
2 n=2**2
3 n=2**i
4
5
...... ....... ......
n=2**i
2
4
8
s=s+n
任务四:
根据循环变量、单格麦粒数和总数的关系,计算出64格麦粒的总数。将程序补充完整并测试。
棋盘与麦粒
s=1
for i in range(1,64):
____________
____________
print(s)
n=2i
s=s+n
故事中的国王能实现这个“简单”的要求吗?
课堂小结第1行1粒,第64行64粒后1格是前1格的2倍每行1粒,64行课堂总结循环语句掌握for循环认识循环语句理解循环变量在循环中的作用熟练应用range()函数体验算法的巧妙运用目 录(第2课时)认识循环结构01.掌握for循环02.掌握while循环03.04.体验算法的巧妙运用棋盘与麦粒for任务五:小组合作,总结一下循环语句的格式并完成拖动。<循环变量>in<遍历结构><语句块>for循环
money = [100,200,300,400]
for n in money:
print(n)
其中n会自动的变化,每执行一次代码,n就会自动获取数据类型中的下一个数据,直到把数据类型中的数据遍历完。
for循环——他到底充值了多少钱?
潮起潮落、四季更替等自然现象。若用计算机语言表示周期性,体现的是程序的循环结构。如:十字路口信号灯的交替变换;从星期一到星期日的循环往复等;产品的生产在原有基础上加以改进,不断升级、发展也是循环结构的表现。周期性思考:生活中还有哪些事例可以用for循环来解决???活动三 while循环
初始while循环
i = 0 #循环变量
print(i + 1)
while i < 10: #当循环变量为”真“时,执行后面代码
i = i + 1 #循环条件的改变
在while循环中,可以先设置循环条件,然后根据条件创建循环变量;为防止死循环,设置循环变量改变方法。
i值变化:0,1,2,3,4,5,6,7,8,9
结果展现:1,2,3,4,5,6,7,8,9,10
练习1:使用while循环,打印数字1~10
开始
i < 10
i = i + 1
结束


while循环i = 1#循环变量print(“1~100的累计和为”,sum)#只打印最终结果,因此不需要缩进while i <= 100:#循环条件:1~100sum = sum+1#循环条件的改变练习2计算1~100的数的累计和(包含1和100)sum = 0#设置累计和变量i = i + 1# i增加,进行后续累加计算开始i = 1sum = 0i <=100 输出1~100累计和sumi = i + 1sum = sum + 1结束是否while循环i = 1#循环变量print(“1~100的累计和为”,sum)#只打印最终结果,因此不需要缩进while i <= 100:#循环条件:1~100sum = sum+1#循环条件的改变练习2计算1~100的偶数的累计和(包含1和100)sum = 0#设置累计和变量i = i + 1# i增加,进行后续累加计算if i % 2 == 0:活动四 百钱买百鸡
百钱买百鸡100文钱买来100只鸡,公鸡5文钱1只,母鸡3文钱1只,小鸡1文钱3只。在这100只鸡中,如果设计程序,用计算机解决公鸡、母鸡、小鸡各是多少只的问题?请用数学方程式列出题目中的数量关系设公鸡、母鸡、小鸡各有x、y、z只。x+y+z=1005x+3y+z/3=100百钱买百鸡本题该如何设计程序的算法?穷举法,用计算机列出所有可能的组合,逐个进行验证。x(1,100)公鸡、母鸡、小鸡的取值范围是多少?y(1,100)z=100-x-y百钱买百鸡百钱买百鸡参考程序for___in____________:for___in___________:for___in_____________:if________________and___________:print(x,y,z)yzrange(1,100)xrange(1,100)range(3,100,3)5*x+3*y+z/3 ==100x+y+z ==100如果程序能优化一下算法,可以减少循环的层数,降低循环的次数,提高程序的运行效率。你能想到什么方法对程序进行优化?任务六:设计程序,求出“百钱买百鸡”问题的所有组合并打印输出结果。并估算一下程序中的循环次数。白钱买白鸡x(1,100)公鸡、母鸡、小鸡的取值范围是多少?x(1,20)y(1,100)y(1,33)取值范围优化后循环的次数将大幅减少,程序的效率也会有所提高!!z=100-x-y百钱买百鸡参考程序for___in____________:for___in___________:if________________and___________:print(‘公鸡: %s 母鸡:%s 小鸡:%’%(x,y,z)yz=100-x-yrange(1,20)xrange(1,33)5*x+3*y+z/3 ==100z%3 == 0for循环vs while循环while<条件1>:<语句块1>else<语句块2>:当条件为True时循环体重复执行,当条件为False时,循环终止。课堂总结循环语句掌握for循环认识循环语句理解循环变量在循环中的作用掌握while循环体验算法的巧妙运用

展开更多......

收起↑

资源预览