1、邹平一中南校区 技术组 崔翠萍4.4运用循环结构描述问题求解过程运用循环结构描述问题求解过程for循环的应用我要当班长 新学期我们要选新班长,假如班主任委托你作为竞选工作的代理负责人,你怎么帮班主任完成这个任务?选出竞选人投票记票确定投票人制作选票项目分析与算法设计竞选人数量:3竞选人姓名:李静怡 夏文泽 赵亚男投票人数量:5投票人投票:自己输5张竞选人选票内容输出竞选人姓名及其选票 打开“选举.exe”程序,根据提示,输入上面的信息,试一试是否能完成我们的任务?算法设计与程序编写竞选人数量:3竞选人姓名:李静怡 夏文泽 赵亚男投票人数量:5投票人投票:自己输5张选票内容统计选票输出竞选人姓名
2、及其选票for循环知识点拨:for 循环变量循环变量 in 序序列:列:语句或语句组语句或语句组依依次把序列中的每个元素依次迭代出来。次把序列中的每个元素依次迭代出来。打打开开python软件,在软件,在shell模式下输入下面程序。模式下输入下面程序。(1)for i in range(3):print(i)(2)for i in range(1,4):print(i)(3)l1=“李静怡李静怡”,”夏文泽夏文泽”,”赵赵亚男亚男”for i in l1:print(i)n=int(input(“请输入竞选人数量:”)input(“请输入竞选人姓名:”)?l1=l1.append(李静怡)l
3、1.append(夏文泽)l1.append(赵亚男)竞选人数量:3竞选人姓名:李静怡 夏文泽 赵亚男投票人数量:5投票人投票:自己输5张选票内容统计选票输出竞选人姓名及其选票n=int(input(“请输入竞选人数量:”)for i in range(n):s=input(“请输入第%s位竞选人”%(i+1)l1.append(s)在“活动1.py”右击-edit with IDE,打开活动1.py程序,参考上面编写的程序,完成“输入投票人数量为m,并使用for循环将投票人所投姓名添加到列表l2中”的程序,运行程序。时间5分钟,可就近3人交流。算法设计与程序编写【知识到实践1】补充下面程序,
4、并运行程序:m=for i in range():s1=l2.append()竞选人数量:3竞选人姓名:李静怡 夏文泽 赵亚男投票人数量:5投票人投票:自己输5张选票内容统计选票输出竞选人姓名及其选票算法设计与程序编写列表l1列表l2【知识到实践2】统计选票字典res算法设计与程序编写统统计列表计列表l1中元素在中元素在l2中个数中个数 给字典的值给字典的值resi【知识到实践2】统计选票 打开(打开(右右击击-edit with IDE)“活动活动2.py”输入输入相应信息运行程序相应信息运行程序,运行后,在运行完的运行后,在运行完的shell窗窗口口输输入入res字典字典查看查看res字典
5、的竞选人姓名和选票字典的竞选人姓名和选票。“res”备注:备注:l2.count(i)统计统计l2列表中列表中i元素元素的个数的个数for i in :resi=竞选人数量:3竞选人姓名:李静怡 夏文泽 赵亚男投票人数量:5投票人投票:自己输5张选票内容统计选票输出竞选人姓名及其选票竞选人数量:3竞选人姓名:李静怡 夏文泽 赵亚男投票人数量:5投票人投票:自己输5个人统计选票输出竞选人姓名及其选票print(i,resi)算法设计与程序编写【知识到实践3】输输出竞选人姓名和选出竞选人姓名和选票票 打开打开“活动活动3.py”程程序序,补充程序输出竞选人姓名和票数补充程序输出竞选人姓名和票数fo
6、r i in :1、输入竞选人名单2、唱票环节3、统计选票4、输出姓名和选票for i in range(n):s=input(“请输入第%s位竞选人”%(i+1)l1.append(s)m=int(input(“输入投票总票数:”)for i in range(m):s1=input(“请输入第%名同学的选票:”%(i+1)l2.append(s1)for i in l1:resi=l2.count(i)for i in l1:print(i,resi)展示程序与调试运行1、输入竞选人名单2、唱票环节3、统计选票4、输出姓名和选票res=l1=l2=#输入竞选人数量和姓名,并输出竞选人名单n
7、=int(input(请输入竞选人数量:)for i in range(n):s=input(请输入第%s位竞选人:%(i+1)l1.append(s)resl1i=0print(竞选人名单:,l1)#“唱票”环节m=int(input(投票总票数:)for i in range(m):s1=input(请输入第%s名同学的选票:%(i+1)l2.append(s1)#统计票数for i in l1:resi=l2.count(i)#输出竞选人姓名和票数for i in l1:print(i,resi)不断的调试运行展示程序与调试运行#拓展name=max(res,key=lambda x:r
8、esx)print(班长是:%s,选票是%d票。%(name,resname)课堂收获for 循环输入、输出输入、输出forfor循环的使用循环的使用列表列表列表用于存放多个元素向列表中添加元素统 计 列 表 中 元 素 的 个 数 l.count(i)字典字典存储键和值,是一种映射和对应关系输入数字int(input()输出文本:input()for i in range(n):语句或语句组for i in 列表:语句或语句组学习目标学习目标 123理解for循环语句的执行过程能够使用for循环往列表中添加元素运用所学知识解决实际问题,提升逻辑思维能力形成数字化学习与创新的意识和思维习惯,运
9、用所学知识,解决实际问题改变思维习惯1、培养编程思维意识。编程思维的核心,首先是分解问题,从中发现规律,建立解决问题的模型,并映射到合适算法上,然后根据算法写程序实现。2、打好扎实的数学基础。有扎实的数学基础是培养编程思维的前提,在平时的学习中努力提升自己的计算能力和逻辑思维能力,积累厚重的知识技能。3、梦想做未来改变世界的领路人。最基本的着手,慢慢来,从小到大,日积月累,逐步求精,方可马到成功。在英国最古老的建筑物威斯敏斯特教堂旁边,立着一块墓碑,上面刻着一段非常著名的话:“当我年轻的时候,我梦想改变这个世界;当我成熟以后,我发现我不能够改变这个世界,我将目光缩短了些,决定只改变我的国家;当我进入暮年之后,我发现我不能够改变我的国家,我的最后愿望仅仅是改变一下我的家庭。但是,这也不可能。当我现在躺在床上,将行就木时,我突然意识到:如果一开始我仅仅去改变自己,然后,我可能改变我的家庭;在我家人的帮助和鼓励下,我可能为国家做一些事情;稍后,谁知道呢?我甚至可能改变这个世界。”做未来改变世界的领路人谢谢聆听谢谢聆听