第9课for循环的应用实例 ppt课件(32张PPT)+教案-2023新浙教版(2020)八年级上册《信息技术》.rar

相关 举报
  • 第9课 for循环的应用实例 ppt课件(32张PPT)+教案_2023新浙教版(2020)八年级上册《信息技术》
    • 第9课 for循环的应用实例.doc--点击预览
    • 第9课 for循环的应用实例.pptx--点击预览

文件预览区

资源描述
浙教版信息技术八年级第 9 课 for 循环的应用实例教学设计浙教版信息技术八年级第 9 课 for 循环的应用实例教学设计课题 for 循环的应用实例单元第二单元学科信息技术年级八年级学习目标知识目标:掌握 for 循环的语法格式,学会使用 for 循环解决实际生活中的问题。技能目标:掌握利用 for 循环分析问题和解决问题的能力,能够编写正确的 python 代码。情感目标:通过实践,增强学生学习的自信心和自豪感;提升学生对学习 python 的兴趣。重点for 循环结构语法格式难点使用 for 循环解决实际问题教学过程教学环节教师活动学生活动设计意图导入新课上节课我们学习了 for 循环机构程序设计,这节课我们通过实例进一步理解应用 for 机构程序结构,来解决实际问题。让我们一块学习吧!思 考 并 回 答问题 激发学生学习兴趣并快速进入学习状态讲授新课在印度有一个古老的传说:国王打算奖赏发明了国际象棋的大臣。他对国王说:“陛下,我只要一些麦粒。请您在这张棋盘的第 1 个小格放 1 粒麦子,第 2 个小格放 2 粒,第 3 小格放 4 粒,第 4 小格放 8 粒,以此类推,直到把 64 格棋盘放满就行了。”国王觉得这个要求太容易满足了,就答应给他这些麦粒。当人们把一袋一袋的麦子搬来开始计数时,国王才发现:就算把全印度甚至全世界的麦粒都拿来,也满足不了他的要求。那么,这位大臣要求得到的麦粒到底是多少呢?一、问题分析一、问题分析该问题可以用累加的方法求解,相邻格子的麦粒数有一定规律,即后一格的麦粒数是前一格的 2倍。若用变量 i 表示当前所处格子的序号,变量 p表示此格子中存放的麦粒数,变量 s 表示累加得到的麦粒数那么分析过程如表所示通 过 教 师 的讲解,以小组合作的方式,开 展 探 讨 交流,完成任务。通过小组合作,加强学生组内团结、共同完成任务二、算法设计二、算法设计根据以上分析,输入数据为棋盘的格子数 n,输出数据为麦粒的总粒数 s。间处理数据为计数器和每个格子的麦粒数,不用输出。该算法用自然语言描述如下:输入:棋盘的格子数 n。处理:每个格子的麦粒数 p。输出:麦粒的总数 s。该算法用流程图表示,如图所示。三、编写代码三、编写代码根据设计的算法,先输入棋盘的格子数 n,然后通过 for 循环语句实现累加。麦粒总数 s 需要在循环之前进行数值初始化为 0,第 1 格麦粒数 p 数值初始化为 1。其程序代码如下:#n 表示棋盘的格子数n=int(input(请输入棋盘格子数:”)P=l#第 1 格麦粒数 p 置初值 1s=0#累加器 s 初始化为 0#通过 for 语句循环累加,并输出麦粒总数for i in range(1,n+1):s=s+p p=p*2print(棋盘格子数为:,n,麦粒总数:,s)循环的边界条件,也就是考虑循环的进入和退出条件。本例中,循环是从第 1 个格子到第 64 个格子,因为包含第 64 个格子本身所以函数 range()的终值参数为 n+1。知识链接学 生 小 组 间讨论,共同完成任务。通 过 教 师 的讲解,以小组合作的方式,开 展 探 讨 交流,完成任务。通 过 教 师 的讲解,以小组培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务。计数器在算法执行过程中,用来记录某种事件发生次数的变量。1.计数器的初值通常置为 0.2.循环体中的计数语句格式通常为 i=i+1。知识链接累加器在算法执行过程中,用来生成并存储数据累加和的变量。1.累加器的初值通常置为 0.2.循环体中的累加语句格式通常为 s=s+x。四、调试运行四、调试运行按“F5”键,输入棋盘格子数,观察运行结果。为了更好呈现麦粒重量和计算过程,可以将麦粒数转化为吨数(按每粒麦子约 0.03 克计算),并在循环过程中输出每个格子的麦粒数 p。其程序代码如下:#n 表示棋盘的格子数n=int(input(请输入棋盘格子数:)p=l#第 1 格麦粒数 p 置初值 1=0#累加器 s 初始化为 O#通过 for 语句循环累加,并输出每个格子麦粒数#最后输出麦粒总重量,单位换算成吨for i in range(1,n+1):s=s+p p=p*2 print(当前格子序号:,i,当前格子麦粒数:,int(p/2)s=(s*0.03)/(1000*1000)print(麦粒总重量(吨):,format(s,.2f)合作的方式,开 展 探 讨 交流,完成任务。学 生 小 组 间讨论,共同完成任务。加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。实践实践 1判断 m 是否为素数(m 为正整数,由用户输入)分析:(1)素数的定义:一个数是素数,则这个数的约数只有 1 和它本身。(2)若一个数不是素数,则只有这个数存在除1 和它本身之外的任意一个约数即可。即:若 m 不是素数,则除 1 和 m 外,至少还存在一个约数 x,且 x 的取值范围是:2,m-1.(3)综合前两条,判断 m 是否为素数,只需依次判断2,m-1中是否存在 m 的约数即可。显然,循 环 变 量 的 初 值 为:start=2,终 值 为:stop=m-1+1=m,步长 step=1.代码示例:但代码示例 1 存在一定的 bug,那就是当 m 的值为 1 或 2 时,或提示出错,错误提示如下:这是因为,当 m 的值为 1 或 2 时,for 循环条件不成立,for 循环不执行,i 没有赋值。所以会提示:变量 i 没有定义。为解决程序 bug,需要加上 m=1 和 m=2 这两种情况。代码示例:实践实践 2九九乘法表分析:观察九九乘法表,乘号前面的数是从 1 到 9(以行为单位);在每行内部,乘号后面的数是从 1 开始逐渐增加,直到等于乘号前面的数。令变量 i 表示乘号前面的数,则 i 初值 start=1,终值为 stop=9+1=1;通 过 教 师 的讲解,以小组合作的方式,开 展 探 讨 交流,完成任务。学 生 小 组 间讨论,共同完成任务。通 过 教 师 的讲解,以小组合作的方式,开 展 探 讨 交流,完成任务。学 生 小 组 间加强学生组内团结、共同完成任务培锻炼学生的语言组织能力和表达的能力。加强学生组内团结、共同完成任务令变量 j 表示乘号后面的数,则 j 初值 start=1,终值为 stop=i+1代码示例:随堂练习随堂练习寻找水仙花数。水仙花数是指一个三位数,它每个数位上的数的 3 次幂之和等于它本身。lst=#初置空列表for a=i%10#个位 b=(i/10)%10#十位 c=i/100#百位 if(a*3+b*3+c*3)=i:lst.append(i)print(lst)讨论,共同完成任务,并分组汇报。培养学生独立完成练习的能力。课堂小结分小组总结归纳,教师补充。各 组 汇 报 总结,其他小组成员做补充。锻炼学生的总结能力,逻辑思维、语言表达能力。布置作业 求 m 到 n 的所有素数(m 和 n 为正整数,由用户输入,且 m 和 n 均大于等于 3)板书一、问题分析二、算法设计三、编写代码四、调试运行浙教版信息技术浙教版信息技术 八八年级年级第9课 for循环的应用实例新知导入 上节课我们学习了for循环机构程序设计,这节课我们通过实例进一步理解应用for机构程序结构,来解决实际问题。让我们一块学习吧!新知讲解 在印度有一个古老的传说:国王打算奖赏发明了国际象棋的大臣。他对国王说:“陛下,我只要一些麦粒。请您在这张棋盘的第1个小格放1粒麦子,第2个小格放2粒,第3小格放4粒,第4小格放8粒,以此类推,直到把64格棋盘放满就行了。”国王觉得这个要求太容易满足了,就答应给他这些麦粒。当人们把一袋一袋的麦子搬来开始计数时,国王才发现:就算把全印度甚至全世界的麦粒都拿来,也满足不了他的要求。新知讲解 那么,这位大臣要求得到的麦粒到底是多少呢?新知讲解一、问题分析 该问题可以用累加的方法求解,相邻格子的麦粒数有一定规律,即后一格的麦粒数是前一格的2倍。若用变量i表示当前所处格子的序号,变量p表示此格子中存放的麦粒数,变量s表示累加得到的麦粒数新知讲解那么分析过程如表所示格子的序号(i)当前格子存放的麦粒数(p)累加和(s)11121*21+232*21+2+442*2*21+2+4+8642*2*2.*21+2+4+8新知讲解二、算法设计 根据以上分析,输入数据为棋盘的格子数n,输出数据为麦粒的总粒数s。间处理数据为计数器和每个格子的麦粒数,不用输出。新知讲解输入:棋盘的格子数n。该算法用自然语言描述如下:处理:每个格子的麦粒数p。输出:麦粒的总数s。新知讲解 该算法用流程图表示,如图所示。新知讲解三、编写代码 根据设计的算法,先输入棋盘的格子数n,然后通过for循环语句实现累加。麦粒总数s需要在循环之前进行数值初始化为0,第1格麦粒数p数值初始化为1。新知讲解其程序代码如下:#n表示棋盘的格子数n=int(input(请输入棋盘格子数:”)P=l#第1格麦粒数p置初值1s=0#累加器s初始化为0#通过for语句循环累加,并输出麦粒总数for i in range(1,n+1):s=s+p p=p*2print(棋盘格子数为:,n,麦粒总数:,s)新知讲解 循环的边界条件,也就是考虑循环的进入和退出条件。本例中,循环是从第1个格子到第64个格子,因为包含第64个格子本身 所以函数range()的终值参数为n+1。新知讲解计数器在算法执行过程中,用来记录某种事件发生次数的变量。1.计数器的初值通常置为0.2.循环体中的计数语句格式通常为i=i+1。知识链接新知讲解累加器在算法执行过程中,用来生成并存储数据累加和的变量。1.累加器的初值通常置为0.2.循环体中的累加语句格式通常为s=s+x。知识链接新知讲解四、调试运行 按“F5”键,输入棋盘格子数,观察运行结果。新知讲解 为了更好呈现麦粒重量和计算过程,可以将麦粒数转化为吨数(按每粒麦子约0.03克计算),并在循环过程中输出每个格子的麦粒数p。新知讲解其程序代码如下:#n表示棋盘的格子数n=int(input(请输入棋盘格子数:)p=l#第1格麦粒数p置初值1=0#累加器s初始化为O#通过for语句循环累加,并输出每个格子麦粒数#最后输出麦粒总重量,单位换算成吨for i in range(1,n+1):s=s+p p=p*2 print(当前格子序号:,i,当前格子麦粒数:,int(p/2)s=(s*0.03)/(1000*1000)print(麦粒总重量(吨):,format(s,.2f)新知讲解 判断m是否为素数(m为正整数,由用户输入)实践1新知讲解分析:(1)素数的定义:一个数是素数,则这个数的约数只有1和它本身。(2)若一个数不是素数,则只有这个数存在除1和它本身之外的任意一个约数即可。即:若m不是素数,则除1和m外,至少还存在一个约数x,且x的取值范围是:2,m-1.(3)综合前两条,判断m是否为素数,只需依次判断2,m-1中是否存在m的约数即可。显然,循环变量的初值为:start=2,终值为:stop=m-1+1=m,步长step=1.新知讲解代码示例:新知讲解 但代码示例1存在一定的bug,那就是当m的值为1或2时,或提示出错,错误提示如下:新知讲解 这是因为,当m的值为1或2时,for循环条件不成立,for循环不执行,i没有赋值。所以会提示:变量i没有定义。为解决程序bug,需要加上m=1和m=2这两种情况。新知讲解代码示例:新知讲解实践2九九乘法表新知讲解分析:观察九九乘法表,乘号前面的数是从1到9(以行为单位);在每行内部,乘号后面的数是从1开始逐渐增加,直到等于乘号前面的数。令变量i表示乘号前面的数,则i初值start=1,终值为stop=9+1=1;令变量j表示乘号后面的数,则j初值start=1,终值为stop=i+1新知讲解代码示例:lst=#初置空列表for a=i%10#个位 b=(i/10)%10#十位 c=i/100#百位 if(a*3+b*3+c*3)=i:lst.append(i)print(lst)随堂练习 寻找水仙花数。水仙花数是指一个三位数,它每个数位上的数的3次幂之和等于它本身。课堂小结板书设计一、问题分析二、算法设计三、编写代码四、调试运行 求m到n的所有素数(m和n为正整数,由用户输入,且m和n均大于等于3)作业布置
展开阅读全文
相关搜索
资源标签
版权提示 | 免责声明

1,本文(第9课for循环的应用实例 ppt课件(32张PPT)+教案-2023新浙教版(2020)八年级上册《信息技术》.rar)为本站会员(QXX)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


当前位置:首页 > 初中 > 信息 > 浙教版(2020) > 八年级上册


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|