解析算法与问题解决教育部资源中心解析算法与问题解决课件_第1页
解析算法与问题解决教育部资源中心解析算法与问题解决课件_第2页
解析算法与问题解决教育部资源中心解析算法与问题解决课件_第3页
解析算法与问题解决教育部资源中心解析算法与问题解决课件_第4页
解析算法与问题解决教育部资源中心解析算法与问题解决课件_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家中小学课程资源解析算法(第十七课时)年 级:高一学

科:信息技术(人教/中图版)学 校:北京师范大学附属中学算法与问题解决高某著名企业息技术广义上讲,算法是解决一个特定问题而采取的确定的、有限的步骤。在计算机领域,算法作为一个精心设计的运算序列,描述了计算机如何将输入转化为输出的过程体验探索:绿灯时长的最优设置通常,行人的步行速度约为4.4

km/h,观察到信号灯变化后的反应时间约为2

s。如果要保证行人能走过一定距离的人行横道(例如:20

m),绿灯的时间至少需要设置多久?高某著名企业息技术分析问题已知条件V步行

4400

/

3600

1.2m

/

st反应

2s

20mS求解目标t绿灯长

?确立数学关系,建立数学模型。高某著名企业息技术设计算法

S

V步行

t反应t过 t绿灯长

t过t反应t绿灯长

S

V步行确立数学关系,建立数学模型。t绿灯长

20

1.2

2

18.7高某著名企业息技术建立数学模型高某著名企业息技术数学模型是用数学符号、数学式子、程序、图形等对实际问题本质属性的抽象而又简洁的刻画。建立数学模型,就是根据实际问题来简化假设、分析内在规律,之后抽象成为数学的符号和语言。解析算法通过分析问题的已知条件和求解目标,抽象成数学模型,借助解析式,用已知条件为变量赋值进行求解。例如:绿灯时长的最优设置t反应t绿灯长

S

V步行SV步行t反应 t绿灯长已知求解解析式高某著名企业息技术想一想解析算法指通过找出解决问题的前提条件与结果之间的关系表达式,并计算表达式来实现问题的求解。我们的日常生活中,还有哪些可以利用解析算法解决的问题?高某著名企业息技术生活中的问题解析“网上购物”某省市某省市力的购物方式已经被越来越多的人接受并使用。在网上购物时,选择了商品和数量,页面上立即显示出总价。请思考:购物程序中的总价是如何计算出来的?已知单价、数量数学关系总价=单价*数量求解总价高某著名企业息技术基于解析算法的问题解决编程调试已知条件求解目标二者关系计算高某著名企业息技术基于解析算法的问题解决高某著名企业息技术某地区为了开发山区农业,需要了解山地的气候变化。现已知该地山区海拔每升高100m,气温下降约0.5℃,山地最高海拔为1500m,山脚下的年平均气22℃(假设山脚海拔为0m)。实践探索:山地气问题高某著名企业息技术根据气拔升高而变化的规律,写出计算该山地不同海拔高度的气析式,并编程实现。某种植物适宜生长在气18℃-20℃的山区,如果要分析这种植物应被种植在该山地多高的地区为宜,需要如何修改算法,请编程实现。分析问题已知海拔每升高100m,降0.5℃最高海拔1500m,山脚平均气温22℃求解海拔与关系式t

h

100

0.5变化t

h

22

-

h

100

0.5数学关系0

h

1500高某著名企业息技术设计算法开始输入海拔h输出t结束t=22-h/100*0.5高某著名企业息技术高某著名企业息技术编程实现高某著名企业息技术分析问题hh

(22-t)

2

100已知某种植物适宜生长在18-20℃t

h

22

-

h

100

0.5求解植物适宜生长的海拔区间数学关系0

h

1500高某著名企业息技术设计算法开始输出h1,h2结束h1=(22-t1)*2*100t1=18,t2=20h2=(22-t2)*2*100高某著名企业息技术高某著名企业息技术编程实现高某著名企业息技术基于解析算法的问题解决目前,国内很多高速公路都启用了区间测速。区间测速是在同一路段布设两个监测点,基于车辆通过前后两个监测点的时间来计算车辆在该路段的平均行驶速度,并依据限速标识判定车辆是否超速。高某著名企业息技术实践探索:区间测速现有一段长度为66

km的测速区间,汽车的限速是100

km/h。数据中心需要编写一段程序来判断汽车是否超速通过。高某著名企业息技术要判断小车是否在区间内超速,需要求得小车的 ,并与 对比,如果大于限速则超速,否则就是正常通过。求平均时速需要提供

。区间距离已经明确,小车的通过时间可以由前后两个监测点的时间差判定,为简化问题,我们可以将通过时间设为输入数据。分析问题高某著名企业息技术分析问题求解已知S区间

66V限速

100t小车V小车数学模型高某著名企业息技术V小车

S区间

t小车设计算法输入ts=66v=s/t*60开始结束输出'超速通过'v>100输出'正常通过'是高某著名企业息技术否(t以分钟为单位。)高某著名企业息技术编程实现高某著名企业息技术基于解析算法的问题解决高某著名企业息技术实践探索:抢红包家都熟悉的一种游戏娱乐方式。请思考:红包的数额是如何生成的?为什么你打开的红包金额和别人的不一样?高某著名企业息技术分析问题假设现在生成2个红包,总金额为x,单个红包的金额为整数,最小金额为1,求两个红包的金额。已知总金额

x红包数量

2高某著名企业息技术求解红包a的金额红包b的金额分析问题已知总金额

x红包数量

2求解红包a的金额红包b的金额a=[1,x-1]之间的任意整数b=x-a数学关系高某著名企业息技术设计算法b=x-a开始输入红包总额x输出a,b结束a=randint(1,x-1)高某著名企业息技术高某著名企业息技术编程实现请思考:如果是3个或多个红包数量,应该如何修改程序解决问题?高某著名企业息技术实践探索:抢红包高某著名企业息技术如果红包数改成3个:a=[1,总金额-2]

之间的随机数;b=[1,(总金额-第1个红包)-1]之间的随机数;c=总金额-第1个红包-第2个红包。如果是n个红包,应该如何设计算法呢?实践探索:抢红包高某著名企业息技术比如100元,由10个人分,那么第一份:x1=[1,100-9]之间的随机整数。第二份:x2=[1,(100-x1)-8]之间的随机整数。第三份:x3=[1,(100-x1-x2)-7]之间的随机整数。……第n份:xn=100-x1-x2-...-x(n-1)。实践探索:抢红包数学关系x(n-1)=[1,(总额-x1-x2-…x(n-2))+1]之间的随机整数。……xn=总额-x1-x2-...-x(n-1)。高某著名企业息技术输入总额x,数量n开始n>1a=randint(1,x-n+1)输出ax=x-an=n-1是高某著名企业息技术否输出x结束高某著名企业息技术想一想高某著名企业息技术抢红包小程序的算法只是一种可行的方法。实际上,生活中所用的小程序的算法要更加复杂和严谨。请你思考:如何改进算法,让程序更加严谨和规范呢?基于解析算法的问题解决思路高某著名企业息技术Input输入:明确问题的前提条件;Output输出:明确要求的解;Process处理:寻找前提条件与结果之间的数学表达式,代入数值,完成计算。小结分析问题基于解析算法设计程序编程调试解析算法与问题解决基于解析算法的问题解决解析算法分析已知条件和求解目标抽象得出数学模型代入数值求解高某著名企业息技术课后练习高某著名企业息技术收集学校行状况(度、高峰时段、人流量、车流量等信息),设计一种在智能交通环境下,控制十字路口红绿灯时长变化的合理方案。结合第八、十课时所学的交通信号灯和倒计时器小程序,优化交通信号灯程序。赋值语句练习1:判断以下赋值语句写法是否正确,为什么?(1(2(3(4练习2:下列程序的输出结果是多少?A=30A=A+10A=50print(A)是)50D=6+9 否)F+3=E+6是)Z=X*Y 否)C$=goodnight高某著名企业息技术目前,世界上包括我国在内的绝大多数国家都使用摄氏,而美、英等国家使用华氏。对于去美国旅行的中国游客来说,需要将当地发布的华氏换为摄氏,以符合自己的理解习惯;同样,来中国旅行的美国游客亦如此。请你想一想,能否利用计算机辅助旅行者进行换?实践探索:换高某著名企业息技术分析问题如果用c表示摄氏,f表示华氏,那么把华氏换为摄氏公式为:c

(f

32)

1.8根据这个公式,应该如何设计算法呢?高某著名企业息技术设计算法①输入华氏f=90②利用公式计算摄氏③输出摄氏c输入华氏fc=(f-32)/1.8开始输出摄氏c结束顺序结构高某著名企业息技术高某著名企业息技术编程调试c=(f-32)/1.8开始f=90结束输出c如果是输入任意华氏计算摄氏,应该如何修改呢?高某著名企业息技术输入函数input()Python语言主要用函数input()实现数据输入。函数input()主要用来接收键盘的键入,返回值为字符串型数据。通常,在输入时可以给出提示信息,例如:f=input("请输入华氏:")高某著名企业息技术高某著名企业息技术编程调试c=(f-32)/1.8开始输入f结束输出c程序是否正常运行并得到结果?高某著名企业息技术在程序设计中,可以通过强制类型转换操作,把某个数据从一种数据类型转换成另一种数据类型。高某著名企业息技术数据类型转换数据类型转换函数功能说明float(x)将x转换为一个浮点型数据int(x)将x转换为一个整型数据str(x)将x转换为字符串型数据高某著名企业息技术编程调试c=(f-32)/1.8开始输入f结束输出c如何让程序具有更友好的交互性?f=int(f)高某著名企业息技术Python语言主要用函数print()实现数据输出。函数print()主要用于在屏幕上输出一个或多个输出项的值,多个输出项中间用逗号隔开,例如:输出函数print()print(c)print(f,'转换为摄氏:',c)高某著名企业息技术编程调试-参考答案高某著名企业息技术输出函数print()函数print()会自动在行末加上回车。如果不需回车,只需在函数print

()的结尾添加一个逗号

,

并设置分隔符参数

end,就可以改变它的行为。print(f)

换行print('华氏:',end='

')

以空格结尾,不换行print(f,end='\n

')

以换行符结尾,换行高某著名企业息技术编程调试高某著名企业息技术程序通常包括:和 三部分。Input:程序输入,是程序的开始。Process:程序对输入进行处理,产生输出结果。Output:程序输出,展示运算结果。程序设计的IPO模式高某著名企业息技术根据键盘输入的身高和体重值,编写程序计算体重指数BMI。(BMI=w/h/h,w为体重kg,h为身高m。)练一练提出问题分析问题设计方案编程调试解决问题高某著名企业息技术

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论