资源简介 (共30张PPT)第二章算法与程序实现2.4.1基于解析算法的问题解决目录CONTENTS01温故知新02解决问题03项目实战04阅读拓展温故知01新温故知新if条件表达式:语句块if条件表达式:语句块1else:语句块2if条件表达式1:语句块1elif条件表达式2:语句块2elif条件表达式3:语句块3……else:语句块n1、条件分支选择语句2、循环语句1while语句温故知新满足条件?否循环体是退出循环While条件语句后面加冒号2、循环语句2for语句温故知新for变量in序列:语句块(循环体)for与range()是天生的一对。例:循环输出0到100的自然数。foriinrange(0,101):print(i)题1、左侧程序运行时,从键盘上输入-3,则输出的值为()A-3B3C1D-1温故知新X=float(input(“请输入x的值”))Ifx>0:Y=1Elseifx=0y=0ElseY=-1Print(y)题2、执行如图所示的程序框图,若输出的k=5,,则输入的整数p的最大值为A7B15C31D63温故知新题3、图中的循环体语句用python语句如何描述?题4、下面给出的一个用循环语句编写的程序K=1Sum=0Whilek<10:sum=sum+k2k=k+1Print(sum)温故知新完成任务:指出程序所用的是何种循环语句,并指出该程序的算法功能。请用另一种循环语句的形式把该程序写出来。(看看老师给出的答案对不对)。foriinrange(1,10):解决问02题问题引入编写程序,输入一元二次方程ax2+bx+c=0(a!=0)的系数,输出求解结果。应用简单的数学知识来分析问题,寻找问题各要素之间的关系,用计算机编程来快速解决。数学问题建构模型解析算法:在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来,解决了这些表达式,问题也就得以解决。要先读题,找出已知条件、求解问题,观察分析找出各要素之间的关系,建立解析关系表达式。?????解析就是深入分析、剖析的意思。????核心概念解析算法深入讲解用解析法编程来解决问题1.分析问题、建立数学模型。已知问题求解问题解析关系表达式关键2.设计算法,确定范围4.调试程序3.编写程序分析交流设判别式△=b2-4ac(1)当△>0时,一元二次方程有两个不等的实数根。(2)当△=0时,一元二次方程有两个相等的实数根。(3)当△<0时,一元二次方程没有实数根。一元二次方程的根有三种不同情况:是△=b2-4ac△>0?否多分支循环解决问题将右侧程序补充完整ax2+bx+c=0(a!=0)=-c/bb2-4ac=(-b+math.sqrt(d))/(2a)=(-b-math.sqrt(d))/(2a)解决问题Python的标准库是在安装软件时默认自带的。标准库提供的组件数量非常庞大,涉及范围十分广泛。标准库包括核心语言的数据类型、内置函数和功能模块。在使用标准库前,需使用import语句进行导入。math库、time库、turtle库和pickle库都是标准库。标准库是Python不可分割的一部分。上述程序用到math库,如不使用库,以数学学科的算法规则,本程序中的语句将如何改写?x1=(-b+math.sqrt(d))/(2a)#方程的根x2=(-b-math.sqrt(d))/(2a)#方程的根改写后并能在python语言中运行。探究:项目实03战割圆术割之弥细所失弥少割之又割以至于不可割则与圆合体而无所失矣??????????--------《海岛算经》刘徽中国的圆周率比西方早了近一千年可谓是古人伟大的发现之一当古时智慧与现代技术相结合又会碰撞出怎样的火花呢接下来让我们一起用现代的Python循着古时割圆术的思路求出圆周率这一奇妙的数字割圆术1、刘徽发明“割圆术”是为求“圆周率”。那么圆周率究竟是指什么呢?2、看左侧,你发现了什么?总结割圆术的规律。探究:割圆术圆周率就是指“圆周长与该圆直径的比率”。很幸运,这是个不变的“常数”!一个圆我们怎样才能求出π?要知道,在中国古代,很长一段时间大家都求不出π的较精确值。如果没有它,我们对圆和球体等将束手无策。“割圆术”,则是以“圆内接正多边形的面积”,来无限逼近“圆面积”。即通过圆内接正多边形细割圆,并使正多边形的周长无限接近圆的周长,进而来求得较为精确的圆周率。割圆术圆周率就是指“圆周长与该圆直径的比率”。很幸运,这是个不变的“常数”!一个圆我们怎样才能求出π?要知道,在中国古代,很长一段时间大家都求不出π的较精确值。如果没有它,我们对圆和球体等将束手无策。“割圆术”,则是以“圆内接正多边形的面积”,来无限逼近“圆面积”。即通过圆内接正多边形细割圆,并使正多边形的周长无限接近圆的周长,进而来求得较为精确的圆周率。割圆术割圆术建构模型已知问题求解问题解析表达式思维导图正多边形的边数n,边长(图中AB),半径计算圆周率π从六边形开始计算,运用n边形与2n边形之间的关系求解。割圆术importmathn=int(input("请输入正多边形的边数:"))i=6x=1s=6math.sqrt(3)/4whilei<=n/2:h=math.sqrt(1-(x/2)2)s=s+ix(1-h)/2x=math.sqrt((x/2)2+(1-h)2)i=2iprint("当正多边形的边数为",n,"时,π的近似值为:",s)程序代码割圆术随着n的增大,s2n的值越接近于π。阅读拓04展数学建模数学建模竞赛为了适应科学技术发展的需要和培养高质量、高层次科技人才,数学建模已经在基础教育中逐步开展,国内外越来越多的学校正在进行数学建模课程的教学和参加开放性的数学建模竞赛,将数学建模教学和竞赛作为教学改革和培养高层次的科技人才的一个重要方面。请到网上搜索数学建模竞赛,了解相关内容,数学建模数学建模,当需要从定量的角度分析和研究一个实际问题时,人们就要在深入调查研究、了解对象信息、作出简化假设、分析内在规律等工作的基础上,用数学的符号和语言作表述来建立数学模型。?数学建模分析实例建立模型小球从10米高处自由下落,每次弹起的高度是下落高度的70%。当小球弹起的高度不足原高度的千分之一时,小球很快就会停止跳动,计算小球在整个弹跳过程中所经历的总路程(忽略弹起高度不足原高度千分之一的部分)。谢谢聆听教学设计课例名称2.4.1基于解析算法的问题解决学段学科高中信息技术教材版本人教中图版2019第1版章节第二章第四节年级高一核心素养目标学会分析问题,合理设计算法,建立求解问题的解析式(计算思维)。理解解析法的思想,抽取数学模型(计算思维)。3、关注解析法解决问题的意义(信息意识)。4、综合运用各学科知识,培养勇于实践,勤于思考和善于总结的科学探索精神与严谨的态度(信息社会责任)。教学重难点1、教学重点:掌握解析算法的设计,编写程序,解决实际问题。2、教学难点:用解析算法分析问题,抽取数学模型。教材分析解析算法与其他算法比较,相对较容易理解,困难的是解析式的导出,这需要在计算机学科与其他学科之间进行整合。本节综合运用数学、物理等学科的知识和思考方法,寻找问题中各要素之间的关系,导出解决问题的解析式或列出相关的方程,然后设计程序求解。教学策略教师引导学生通过讨论分析思考和探索等方式,结合案例学习。教学中采用问题驱动及交流展示等教学活动,帮助学生理解解析法的基本思路,让学生领会其文化价值,应用经典项目向深远处引领,激发学生产生更浓厚的学习需求。2.4.1基于解析算法的问题解决教学环节教师活动学生活动设计意图温故知新复习条件语句循环语句学生完成相关问题:执行如图所示的程序框图,若输出的结果k=5,则输入的整数p的最大值为A7B15C31D63复习引入,提高本节课的学习效率。解决问题1、提出问题:输入一元二次方程ax2+bx+c=0(a!=0)的系数,输出求解结果。2、引导学生总结出核心概念解析法:在分析具体问题的基础上,抽取出一个数学模型,这个数学模型能用若干个解析表达式表示出来。1、分析交流如何用编程来完成问题。2、解读问题,找出已知条件、求解问题,观察分析找出各要素之间的关系,建立解析关系表达式。3.设计算法4.调试程序对一种算法直接讲授,会感枯燥,将其溶入相关的数学知识中,引导学生通过分析、讨论、领会算法如何从已知条件入手,寻找各要素之间的关系,导出解析式或相关方程,让学生在解决问题中掌握解析算法思想。解决问题组织学生分组探究,解决问题,帮助学生克服难点,体验成功的乐趣。5、补充下列程序:6、探究:上述程序用到math库,如不使用库,以数学学科的算法规则,本程序中的语句将如何改写?设置障碍,理解如何通过程序实现算法,逐渐达到自身对知识的意义建构,感受解析算法的魅力,提高计算思维。项目实战提出问题:在古代,很长一段时间大家都求不出π的较精确值。如果没有它,我们对圆和球体等将束手无策。组织学生用现代的编程Python语言,循着古时割圆术的思路,求出圆周率这一奇妙的数字。探究:1、刘徽发明“割圆术”是为求“圆周率”。那么圆周率究竟是指什么呢?2、总结割圆术的规律。3、寻求已知问题,建立数学模型,完成程序的调试。程序代码:importmathn=int(input("请输入正多边形的边数:"))i=6x=1s=6math.sqrt(3)/4whilei<=n/2:h=math.sqrt(1-(x/2)2)s=s+ix(1-h)/2x=math.sqrt((x/2)2+(1-h)2)i=2iprint("当正多边形的边数为",n,"时,π的近似值为:",s)营造良好的学习氛围,给学生充分的自主学习时间和空间。让学生通过操作演练进行数字化学习与创新,帮助学生形成系统的知识体系,同时感受经典数学问题的文化价值。阅读拓展引领学生进行整合与创新,突出解析法的精髓数学建模。1、请到网上搜索“数学建模竞赛”,了解相关内容。2、问题分析:小球的运动由多次的下落和弹起构成的,但弹起的次数并不容易知道,把小球每次下落和弹起的路程列出,寻找一些规律。提高自主获取信息的能力。进行知识拓展和深究,提出更高的期望。2.4.1基于解析算法的问题解决练习题一、自由落体运动问题从离地500m的高处自由落下一个小球,求从开始落下的时刻起,小球在最后1s内的位移(重力加速度以9.8m/s2计)(一)根据问题,建构相应数学模型已知条件:求解目标:已知与未知的关系:(二)填充完整下列程序importmathh=500g=9.8t=请填充hx=g(t-1)(t-1)/2hh=h-hxprint("小球最后1秒下落的位移是:",hh,"米")2、二、数学界的大神基斯顿·卡曼,发明的运算符号“阶乘”,记作“n!”。一个正整数的阶乘是所有小于及等于该数的正整数的积,如5!=54321,请编写程序进行计算n!。要求写出算法和代码。答案:一、(一)根据问题,建构相应数学模型已知条件:小球离地高度500m,重力加速度9.8m/s2;求解目标:小球在下落最后1s内的位移。3、已知与未知的关系:可用自由落体运动位移与时间关系的公式,求解出下落时间t,以及最后1s内小球的位移。(二)填充完整下列程序t=math.sqrt(2h/g)二、分析:计算n!,需要定义3个变量,已知变量n,由键盘输入,输入的是几,就计算几的阶乘,变量i与s,分别用来循环计数与保存阶乘的计算结果,已知与未知的关系。算法:第一步:输入数存入变量n.第二步:定义变量s与i,并赋初值为1。第三步:循环变量从1开始,判断有没有超过终值,如果超过,跳出循环,否则执行s=si,并且计数器增加1。第四步:输出s,也就是计算n!的值。代码:defjc(n):i=1s=1foriinrange(1,n+1):s=sii+=1returns 展开更多...... 收起↑ 资源列表 2.4.1基于解析算法的问题解决 教案.docx 2.4.1基于解析算法的问题解决 练习.docx 2.4.1基于解析算法的问题解决 课件.pptx