资源简介 (共25张PPT)浙教版信息技术八年级第11课while循环的应用实例新知导入上节课我们学习了while循环结构程序设计,这节课我们通过实例进一步理解应用while程序结构,来解决实际问题。让我们一块学习吧!新知讲解编程实现“猜数游戏”。在给定某数后,让用户进行猜测并输入数,计算机给出相应提示,如偏大、偏小或正确。若所猜测的数正确,则输出猜测次数,否则继续猜数。新知讲解在游戏中,首先要给定一个要猜测的具体数(变量num),然后读入用户的输入数(变量guess)。让计算机反复对输入数与给定数进行比较,并提示如下相关信息:一、问题分析“偏大”(guess>num)“偏小”(guess“正确”(guess=num)新知讲解根据以上问题分析,需将输入数与给定数进行反复比较,在这个过程中不能确定比较的次数,因此需用while循环语句来实现。二、算法设计新知讲解其算法用自然语言描述如下:初始:给定数num=66,计数器i=0.输入:输入数guess.循环处理:比较guess与num大小,若不相等,则i=i+1。输出:猜测次数i+1。新知讲解其算法用流程图表示,如图所示。新知讲解根据设计的算法,假设要猜测的数为66,计数器变量i初始值为0。三、编写代码新知讲解num=66#给定的具体数为66i=0#计数器置初值0#循环猜数WhileTrue:guess=int(input("请输入猜测数:"))Ifguessprint("偏小")i=i+1elifguess>num:print("偏大")i=i+ielse:print("正确,共猜测次数:",i+1)break其程序代码如下新知讲解按“F5”键,输入猜测数,观察运行结果。四、调试运行新知讲解从键盘上任意输入两个正整数m和n,求:(1)m和n的最大公约数(2)m和n的最小公倍数实践1新知讲解分析:(2)a是m和n的公约数,则:m%a==0andn%a==0(3)b是m和n的公倍数,则:b%m==0andb%n==o(1)通过之前逻辑运算符的学习,大家已经明确如何来判断两个数的公约数和公倍数。(4)一个数的约数一定小于等于这个数本身。所以m和n的公约数一定同时满足小于等于m且小于等于n,也就是要满足小于等于m和n中最小的那一个。而最小的约数是1,所以两个数的公约数取值条件应在:min{m,n}]。新知讲解(5)题干要求m和n的最大公约数,最大公约数的范围必然也在[1,min{m,n}],要求最大的,只需从min{m,n}到1,逐个判断,直到满足公约数条件,即满足条件(2)即可。(6)一个数的倍数一定大于等于这个数本身。所以m和n的公倍数一定同时满足大于等于m且大于等于n,也就是要满足大于等于m和n中较大的那一个。所以两个数的公倍数取值:>=max{m,n}。(7)题干要求m和n的最小公倍数,因为所有的公倍数都是>=max{m,n},所以从max{m,n},一次判断,第一个满足条件(3)就是最小公倍数。新知讲解其程序代码如下(如图所示)新知讲解实践2从键盘上任意输入一个正整数,求这个正整数的各位数字之和。例如:输入1、2、3、4,输出结果为:10.新知讲解分析:1234可以写成:1234=10123+4,这种格式类似于:被除数=除数商+余数。1234的各位数字之和是1+2+3+4=10。所以,首先我们需要把各位上的数字提取出来。很明显,余数4就是我们要的个位数字。而要想得到余数4,很明显我们可以用取余运算(%)。所以4=1234%10.新知讲解接下来取十位数字。我们现在已经会取个位数字了,但不会取十位上的数字,所以需要想办法把十位数字转化为个位数字。观察:1234=10123+4,发现被除数1234的十位数字3就是商123的个位数字,提取商123的个位数字,就是提取被除数1234的十位数字。因此,我们可以通过商123来求十位数字。3=123%10.同样的方法:可以利用123除以10的商12来提取1234的百位数字。再利用同样的方法可以提取千位数字。新知讲解所以解决各位数字求和的问题,就转化为了依次求商的个位数字的问题。而商可以用整除运算(//)来求得。代码示例(如图所示):新知讲解找出1-100个自然数中,所有像2、4、6、8、10……96、98、100这样的偶数。偶数的特点?偶数的判断条件:x%2==0你学会了吗?x=1whilex<=100:ifx%2==0:print(x)x=x+1x=1sum=0whilex<=100:print(sum)随堂练习求1+3+5+7+9…+97+99的和。课堂小结总结本节课所学内容板书设计一、问题分析二、算法设计三、编写代码四、调试运行找出1-100个自然数中,所有像1、3、5、79……97、99这样的奇数。作业布置谢谢21世纪教育网(www.21cnjy.com)中小学教育资源网站有大把高质量资料?一线教师?一线教研员?欢迎加入21世纪教育网教师合作团队!!月薪过万不是梦!!详情请看:https://www.21cnjy.com/help/help_extract.php中小学教育资源及组卷应用平台浙教版信息技术八年级第11课while循环的应用实例教学设计课题while循环的应用实例单元第二单元学科信息技术年级八年级学习目标知识目标:了解while循环的语法格式技能目标:掌握while循环的语法格式,能够使用while循环解决实际生活中的问题,学会独立编写和调试代码。情感目标:通过实际生活中的案例,由简到难培养学生对学习新知识的兴趣。重点while循环结构语法格式难点将实际转化为数学思想,并用代码实现教学过程教学环节教师活动学生活动设计意图导入新课上节课我们学习了while循环结构程序设计,这节课我们通过实例进一步理解应用while程序结构,来解决实际问题。让我们一块学习吧!思考并回答问题激发学生学习兴趣并快速进入学习状态讲授新课编程实现“猜数游戏”。在给定某数后,让用户进行猜测并输入数,计算机给出相应提示,如偏大、偏小或正确。若所猜测的数正确,则输出猜测次数,否则继续猜数。一、问题分析在游戏中,首先要给定一个要猜测的具体数(变量num),然后读入用户的输入数(变量guess)。让计算机反复对输入数与给定数进行比较,并提示如下相关信息:“偏大”(guess>num)“偏小”(guess因此需用while循环语句来实现。其算法用自然语言描述如下:初始:给定数num=66,计数器i=0.输入:输入数guess.循环处理:比较guess与num大小,若不相等,则i=i+1。输出:猜测次数i+1。其算法用流程图表示,如图所示。三、编写代码根据设计的算法,假设要猜测的数为66,计数器变量i初始值为0。其程序代码如下num=66#给定的具体数为66i=0#计数器置初值0#循环猜数WhileTrue:guess=int(input("请输入猜测数:"))Ifguessprint("偏小")i=i+1elifguess>num:print("偏大")i=i+ielse:print("正确,共猜测次数:",i+1)break四、调试运行按“F5”键,输入猜测数,观察运行结果。实践1从键盘上任意输入两个正整数m和n,求:(1)m和n的最大公约数(2)m和n的最小公倍数分析:(1)通过之前逻辑运算符的学习,大家已经明确如何来判断两个数的公约数和公倍数。(2)a是m和n的公约数,则:m%a==0andn%a==0(3)b是m和n的公倍数,则:b%m==0andb%n==o(4)一个数的约数一定小于等于这个数本身。所以m和n的公约数一定同时满足小于等于m且小于等于n,也就是要满足小于等于m和n中最小的那一个。而最小的约数是1,所以两个数的公约数取值条件应在:min{m,n}]。(5)题干要求m和n的最大公约数,最大公约数的范围必然也在[1,min{m,n}],要求最大的,只需从min{m,n}到1,逐个判断,直到满足公约数条件,即满足条件(2)即可。(6)一个数的倍数一定大于等于这个数本身。所以m和n的公倍数一定同时满足大于等于m且大于等于n,也就是要满足大于等于m和n中较大的那一个。所以两个数的公倍数取值:>=max{m,n}。(7)题干要求m和n的最小公倍数,因为所有的公倍数都是>=max{m,n},所以从max{m,n},一次判断,第一个满足条件(3)就是最小公倍数。其程序代码如下(如图所示)实践2从键盘上任意输入一个正整数,求这个正整数的各位数字之和。例如:输入1、2、3、4,输出结果为:10.分析:1234的各位数字之和是1+2+3+4=10。所以,首先我们需要把各位上的数字提取出来。1234可以写成:1234=10123+4,这种格式类似于:被除数=除数商+余数。很明显,余数4就是我们要的个位数字。而要想得到余数4,很明显我们可以用取余运算(%)。所以4=1234%10.接下来取十位数字。我们现在已经会取个位数字了,但不会取十位上的数字,所以需要想办法把十位数字转化为个位数字。观察:1234=10123+4,发现被除数1234的十位数字3就是商123的个位数字,提取商123的个位数字,就是提取被除数1234的十位数字。因此,我们可以通过商123来求十位数字。3=123%10.同样的方法:可以利用123除以10的商12来提取1234的百位数字。再利用同样的方法可以提取千位数字。所以解决各位数字求和的问题,就转化为了依次求商的个位数字的问题。而商可以用整除运算(//)来求得。代码示例(如图所示):你学会了吗?找出1-100个自然数中,所有像2、4、6、8、10……96、98、100这样的偶数。偶数的特点?偶数的判断条件:x%2==0x=1whilex<=100:ifx%2==0:print(x)x=x+1随堂练习求1+3+5+7+9…+97+99的和。x=1sum=0whilex<=100:()()print(sum)通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。通过教师的讲解,以小组合作的方式,开展探讨交流,完成任务。学生小组间讨论,共同完成任务。学生小组间讨论,共同完成任务。学生小组间讨论,共同完成任务,并分组汇报。通过小组合作,加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。培锻炼学生的语言组织能力和表达的能力。培养学生独立完成练习的能力。课堂小结分小组总结归纳,教师补充。各组汇报总结,其他小组成员做补充。锻炼学生的总结能力,逻辑思维、语言表达能力。布置作业找出1-100个自然数中,所有像1、3、5、79……97、99这样的奇数。板书一、问题分析二、算法设计三、编写代码四、调试运行21世纪教育网www.21cnjy.com精品试卷·第2页(共2页)HYPERLINK"http://www.21cnjy.com/"21世纪教育网(www.21cnjy.com) 展开更多...... 收起↑ 资源列表 第11课 while循环的应用实例.doc 第11课 while循环的应用实例.pptx