2.1 算法的概念及描述(教学课件)高中信息技术必修1数据与计算同步高效课堂 浙教版_第1页
2.1 算法的概念及描述(教学课件)高中信息技术必修1数据与计算同步高效课堂 浙教版_第2页
2.1 算法的概念及描述(教学课件)高中信息技术必修1数据与计算同步高效课堂 浙教版_第3页
2.1 算法的概念及描述(教学课件)高中信息技术必修1数据与计算同步高效课堂 浙教版_第4页
2.1 算法的概念及描述(教学课件)高中信息技术必修1数据与计算同步高效课堂 浙教版_第5页
已阅读5页,还剩22页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

浙教版(2019)

必修1数据与计算2.1算法的概念及描述学习目标1.了解算法的概念与基本特征(学科核心素养:信息意识)2.了解算法描述方法及特点并能够运用恰当的描述方法表示简单算法(学科核心素养:信息意识、计算思维)3.能够根据实际需要设计算法解决问题,提升利用信息技术学科素养。(学科核心素养:信息意识、数字化学习与创新)新课导入游戏导入:农夫过河游戏具体规则:一个农夫带着—只狼、一只羊和—棵白菜,身处河的南岸。他要把这些东西全部运到北岸。他面前只有一条小船,船只能容下他和—件物品,另外只有农夫才能撑船。如果农夫在场,则狼不能吃羊,羊不能吃白菜,否则狼会吃羊,羊会吃白菜,所以农夫不能留下羊和白菜自己离开,也不能留下狼和羊自己离开,而狼不吃白菜。请求出农夫将所有的东西运过河的方案。新课导入方案1:1.农夫、羊过河

2.农夫回3.农夫、白菜过河

4.农夫、羊回5.农夫、狼过河

6.农夫回7.农夫、羊过河任务一:什么是算法1.自主阅读课本,结合生活经验,利用数字化工具总结归纳算法的概念。填写下表,班内分享,互相补充。新知探究古代算法概念广义算法概念计算机算法概念

任务一:什么是算法2.上网检索古老的算法新知探究(1)秦九韶算法:将一元n次多项式的求值问题转化为n个一次式的算法,大大简化了计算过程,即使在现代,利用计算机解决多项式的求值问题时,秦九韶算法依然是最优的更相减损术(2)割圆术,刘徽提出的割圆术,通过不断分割圆内接正多边形来逼近圆的面积,是中国古代数学中的重要算法。新知探究任务二:了解算法的基本特征有穷性1.计算圆周率所有位数的程序代码2.遍历所有可能的国际象棋棋局并找出最优策略新知探究任务二:了解算法的基本特征可行性1.在普通计算机上用穷举法找出一个超过20000000位的数的的所有质因数2.外出旅行随机买一张票,再确定旅行前往的目的地。新知探究任务二:了解算法的基本特征确定性1.乘坐高铁的路线规划:根据出发地和目的地,确定具体的高铁线路,以及换乘站点,规划的路线和换乘规则是明确的。2.医院排队叫号系统:按照病人预约的号码顺序叫号,规则清晰确定,不会随意更改新知探究任务二:了解算法的基本特征0个或多个输入1.设置闹钟时需要输入具体的时间作为输入,但如果只是单纯依靠默认设置,不进行任何额外的时间输入,也能按照默认的时间响铃可以不输入地点信息,获取默认城市的天气;也可以输入多个不同的地点,获取相应地点的天气新知探究任务二:了解算法的基本特征1个或多个输入1.网购平台,输入关键词,输出相关的商品列表、商品详情、价格、用户评价等多个结果。2.成绩统计系统时输入学生的考试成绩,输出学生的总分、平均分、排名以及各科目成绩分析等多个结果。新知探究任务三:了解算法的描述方法及特点1.结合生活经验和网络资源总结算法描述方法并填写下表算法描述方法自然语言描述法流程图伪代码程序设计语言新知探究任务三:了解算法的描述方法及特点自然语言描述法:自然语言是我们在日常生活中经常交流使用的语言,比如汉语、英语、德语等,用自然语言描述算法通俗易懂。新知探究任务三:了解算法的描述方法及特点流程图:用自然语言描述算法虽然通俗易懂,但会存在面对同样的文字描述,不同的人产生不同的理解。所以,采用流程图来描述比较直观和易于理解。新知探究任务三:了解算法的描述方法及特点2.总结常用流程图基本图形及功能常用流程图及其功能

新知探究任务三:了解算法的描述方法及特点一、矩形作用:表示流程中的一个具体步骤或活动。二、菱形作用:代表决策点或判断。在流程中,根据特定的条件进行判断,然后决定流程的走向。三、圆形矩形作用:表示流程的开始或结束。四、箭头作用:指示流程的方向。连接各个图形,展示流程的先后顺序和逻辑关系。箭头的方向表示流程的推进方向。五、平行四边形作用:一般用于表示输入或输出。例如,输入数据、输出结果等环节可以用平行四边形表示。新知探究任务三:了解算法的描述方法及特点2.常用流程图基本图形及功能新知探究任务三:了解算法的描述方法及特点伪代码指的是一种比较直观简介的、符号接近计算机程序代码的算法描述方式,它很像计算机程序设计语言,但不是真正可以被计算机理解的代码,它没有同意的表示方法,只要合理、正确即可。if(条件)当条件为真时执行的语句;else当条件为假时执行的语句;isPalindrome=true;i=0;j=strLength-1;while(i<j)if(str[i]!=str[j])isPalindrome=false;break;i=i+1;j=j-1;if(isPalindrome)输出"该字符串是回文字符串";else输出"该字符串不是回文字符串";新知探究任务三:了解算法的描述方法及特点程序设计语言:无论是自然语言描述的算法,还是流程图或者伪代码描述的算法,计算机都无法理解并执行。为了让计算机帮助人们真正解决问题,需要将算法用某种计算机程序设计语言来描述,这个过程称为程序编写(或称代码编写)。世界上有很多计算机程序设计语言,实际工作中可以根据问题特点选择恰当的程序设计语言来描述算法。新知探究任务三:了解算法的描述方法及特点4.程序设计语言defget_sensor_reading(space_number):#随机生成一个读数,实际应用中需连接真实传感器获取读数importrandomreturnrandom.uniform(0,2)#传感器阈值sensor_threshold=1.5#总车位数量total_parking_spaces=10forspace_numberinrange(1,total_parking_spaces+1):sensor_reading=get_sensor_reading(space_number)ifsensor_reading>sensor_threshold:space_status="被占用"else:space_status="空闲"print(f"车位{space_number}的状态为:{space_status}")新知探究任务四:体验算法多样性今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?1.假设法:假设全是鸡:先算出假设情况下的脚数,与实际脚数对比,求出脚数的差值。因为每把一只兔当成鸡就少算2只脚,所以用脚数的差值除以2就得到兔的数量,再用总头数减去兔的数量得到鸡的数量。假设全是兔:先算出假设情况下的脚数,与实际脚数对比,求出脚数的差值。因为每把一只鸡当成兔就多算2只脚,所以用脚数的差值除以2就得到鸡的数量,再用总头数减去鸡的数量得到兔的数量。新知探究任务四:体验算法多样性今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?2.方程法:设鸡有m只,兔子有n只,根据头的总数和脚的总数列出方程组,然后求解。3.抬脚法:让鸡和兔都抬起两只脚,此时地上剩下的脚都是兔的,且每只兔还剩2只脚在地上,用剩下的脚数除以2就得到兔的数量,进而求出鸡的数量。鸡有23只,兔有12只。课堂练习1.以下对算法的理解不正确的是()A.一个算法应包含有限的操作步骤,而不能是无限的B.算法中的每一步骤都应当是确定的,而不应当是含糊的、模棱两可的C.算法可以没有输入,但必须有输出D.算法可以没有输出,但必须有输入正确答案:D答案解析:本题考查的是对算法特征的理解,其中算法可以有0个或多个输入,必须有1个或多个输出。故正确答案为D。课堂练习2.下面对算法描述正确的一项是()A.算法只能用伪代码来描述B.算法只能用流程图来表示C.同一算法只能用一种程序语言来实现D.同一问题可以有不同的算法答案:C

温馨提示

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

评论

0/150

提交评论