《【信息技术】算法的概念及其描述 课件 2023—2024学年人教中图版(2019)高中信息技术必修1.pptx》由会员分享,可在线阅读,更多相关《【信息技术】算法的概念及其描述 课件 2023—2024学年人教中图版(2019)高中信息技术必修1.pptx(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2.2算法的概念及其描述-2023 2023年年1010月月-学习目标l描述算法的特征,理解算法在问题解决过程中的作用。l选用恰当的描述方法和控制结构表示简单算法,增强用算法解决问题的意识。情境描述小明到北京旅游,他乘坐火车到达了北京小明到北京旅游,他乘坐火车到达了北京站,然后准备乘坐地铁去天安门参观,地铁线站,然后准备乘坐地铁去天安门参观,地铁线路图如下图所示,你能帮小明规划好路线吗?路图如下图所示,你能帮小明规划好路线吗?是否只有一条路线?请大家思考这个问题。是否只有一条路线?请大家思考这个问题。体验探索地铁1号线寻找路线的方法,可以称之为算法。寻找路线的方法,可以称之为算法。解决同一个问
2、题的算法可能有多种。解决同一个问题的算法可能有多种。2.2.1认识算法广义上讲,算法是解决一个广义上讲,算法是解决一个特定问题特定问题而采取的而采取的确定的确定的、有限的有限的步骤。步骤。在计算机领域,算法作为一个精心设计的运算序列,描述了计算机如何在计算机领域,算法作为一个精心设计的运算序列,描述了计算机如何将输入转化为输出的过程。将输入转化为输出的过程。2.2.1认识算法如何帮助牧羊人成功渡河?如何帮助牧羊人成功渡河?算法是解决一个算法是解决一个特定问题特定问题而采取的而采取的确定的确定的、有限的有限的步骤。步骤。2.2.1认识算法算法一般具有如下特征:算法一般具有如下特征:有输入有输入:
3、一个算法一般要求有:一个算法一般要求有0 0个或多个输入。个或多个输入。有输出有输出:一个算法可以有一个或多个输出。:一个算法可以有一个或多个输出。有穷性有穷性:算法必须能在执行有限个步骤之后终止,也就是算法的步骤不能:算法必须能在执行有限个步骤之后终止,也就是算法的步骤不能是无限的。是无限的。可行性可行性:算法中的每一步的操作都是可以执行的,或者都可以分解成计算:算法中的每一步的操作都是可以执行的,或者都可以分解成计算机可执行的基本操作。机可执行的基本操作。确定性确定性:算法的每个步骤都具有确定的含义,没有歧义。杜绝含糊不清、:算法的每个步骤都具有确定的含义,没有歧义。杜绝含糊不清、模棱两可
4、、二义性描述。模棱两可、二义性描述。2.2.1认识算法练一练:练一练:1 1.下面关于算法的描述,正确的是(下面关于算法的描述,正确的是()A.A.算法就是解决问题的方法和步骤。算法就是解决问题的方法和步骤。B.B.算法可以被无限制的执行。算法可以被无限制的执行。C.C.算法描述了计算机如何将输入转化为输出的过程。算法描述了计算机如何将输入转化为输出的过程。D.D.算法可以有零个或多个输入,但只能有一个输出。算法可以有零个或多个输入,但只能有一个输出。C解析:A:算法是解决一个特定问题而采取的确定的、有限的步骤。算法是解决一个特定问题而采取的确定的、有限的步骤。B:有穷性有穷性:算法必须能在执
5、行有限个步骤之后终止,也就是算法的步骤不能是无限的。:算法必须能在执行有限个步骤之后终止,也就是算法的步骤不能是无限的。D:D:算法一般要求有算法一般要求有0 0个或多个输入,个或多个输入,1 1或多个输出。或多个输出。2.2.2 描述算法小明在去往地铁站时,在路口遇到了一个红绿灯。小明发现该红绿灯上配有一个倒计时器,倒计时15秒之后红灯变成了绿灯,如何将“倒计时倒计时1515秒秒”的算法描述出来?描述描述“红灯变绿灯红灯变绿灯”问题的算法问题的算法描述算法是将解决问题的步骤用一种可理解的方式表示出来。自然语言自然语言流程图流程图伪代码伪代码2.2.2 描述算法描述“红灯变绿灯”问题的算法自然
6、语言自然语言将计数器将计数器t t(剩余秒数)设为(剩余秒数)设为1515;如果如果t t大于等于大于等于1 1,执行步骤,执行步骤,否则执,否则执行步骤行步骤;显示显示t t,并保持显示,并保持显示1 1秒,然后清除显示;秒,然后清除显示;将将t t的值减的值减1 1,跳转至步骤,跳转至步骤。倒计时结束。倒计时结束。自然语言指人们日常所用的语言。用自然语言描述算法就是用人们能够读懂的简短语言对算法的步骤进行描述。易于理解,但有时容易产生二义性,干扰后续编程实现。2.2.21 认识算法当你想要从北京去上海迪士尼旅游,你会如何规划行程呢?网上购买迪士尼门票;根据日期,购买火车票或者飞机票;根据行
7、程及日期安排,预订住宿酒店;带好各种票据,准备好行李,按时乘车;到达上海,乘坐出租车或公共交通车辆去往酒店入住,放行李;带好门票,按时到迪士尼游玩。自然语言自然语言2.2.2 描述算法流程图流程图 结束结束t t 1515t t 1 1输出输出t tt t t-1t-1TrueTrueFalseFalse保持显示保持显示1 1秒秒清除显示清除显示开始开始自然语言流程图2.2.2 描述算法流程图流程图流程图是用图形表示算法的一种常用工具。用流程图描述的算法直观易读,问题解决的步骤清晰简洁,算法结构表达明确。开始/结束框输入/输出框处理框判断框流程线连接点2.2.2 描述算法流程图流程图 流程图符
8、号流程图符号名称名称功能功能开始开始/结束框结束框表示算法的开始或结束输入输入/输出框输出框表示输入或输出数据处理框处理框框中指出要处理的内容,此框有一个入口和一个出口判断框判断框用于表示条件判断及产生分支的情况,判断框有四个顶点,通常上面的顶点表示入口流程线流程线用于控制流程方向连接点连接点用于连接因页面写不下而断开的流程线2.2.2 描述算法流程图流程图 流程图绘制软件在线绘制流程图网站操作时,我们可以在纸上手工绘制流程图,也可以使用工具软件或者到特定的网站进行绘制。文稿处理软件2.2.2 描述算法流程图流程图 A AC C B B顺序结构顺序结构算法有顺序结构、选择结构和循环结构三种基本
9、的控制结构。A A条件条件FalseFalseTrueTrue 循环结构循环结构每个步骤按先后次序依次执行按照条件的成立与否,选择执行不同的分支条件成立反复执行A,一旦不成立跳出循环FalseFalseTrueTrue A AB B条件条件选择结构(分支结构)选择结构(分支结构)2.2.2 描述算法流程图流程图 对比选择结构与循环结构,你有什么发现?A A条件条件FalseFalseTrueTrue 循环结构循环结构FalseFalseTrueTrue A AB B条件条件选择结构(分支结构)选择结构(分支结构)自上而下自上而下2.2.2 描述算法流程图流程图 观察描述“红灯变绿灯”问题的算法
10、,它包含了哪些基本控制结构?结束结束t t 1515t t 1 1输出输出t tt t t-1t-1TrueTrueFalseFalse保持显示保持显示1 1秒秒清除显示清除显示开始开始循环结构循环结构顺序结构顺序结构2.2.2 描述算法流程图流程图 某城市公交车票价2元,乘客可以刷卡乘车。刷卡时,若公交车余额不足2元,提示“请投币请投币”;若余额大于或等于2元但是小于10元,提示“余余额即将不足额即将不足”;若余额大于或等于10元,提示“欢迎乘车欢迎乘车”;请你用流程图描述该功能实现的算法。输入获取当前的公交卡余额获取当前的公交卡余额M输出输出对应的提示语输出对应的提示语主要结构选择结构选择
11、结构2.2.2 描述算法流程图流程图 某城市公交车票价2元,乘客可以刷卡乘车。刷卡时,若公交车余额不足2元,提示“请投币请投币”;若余额大于或等于2元但是小于10元,提示“余额即将不足余额即将不足”;若余额大于或等于10元,提示“欢迎乘车欢迎乘车”;请你用流程图描述该功能实现的算法。2.2.2 描述算法伪代码伪代码 伪代码是采用一种类似程序设计语言的代码来描述算法。t t 1515while t while t 1 1 output 1 output 1 sleep 1s sleep 1s clear clear t t t-1t-1end whileend while结束结束t t 1515
12、t t 1 1输出输出t tt t t-1t-1TrueTrueFalsFalse e保持显示保持显示1 1秒秒清除显示清除显示开始开始2.2.2 描述算法练一练:练一练:1.算法有()结构、()结构和循环结构三种基本的控制结构。2.阅读下面的流程图,它主要包括()结构,它的功能为()。顺序顺序选择选择/分支分支求求100以内能够被以内能够被3整除的数整除的数选择、循环选择、循环for i in range(1,101):if i%3=0:print(i)算法效率求求100以内能够被以内能够被3整除的数整除的数求求100000以内能够被以内能够被3整除的数整除的数算法算法辅助运算在解决问题时,
13、可根据问题规模,选择合适算法在解决问题时,可根据问题规模,选择合适算法均体现了“算法效率”圆周率的计算问题圆周率的计算问题在实际解决问题的过程中,应综合考虑问题类型、问题规模、适用范在实际解决问题的过程中,应综合考虑问题类型、问题规模、适用范围等因素,选择合适算法。围等因素,选择合适算法。课堂总结算算法法概概念念和和描描述述算法的概念算法的概念算法的特征算法的特征算法的效率算法的效率算法的描述方法算法的描述方法有输入有输入有输出有输出确定性确定性有穷性有穷性可行性可行性一个算法通常要求有一个算法通常要求有0 0个或多个输入。个或多个输入。一个算法可以有一个或多个输出。一个算法可以有一个或多个输
14、出。算法必须能在有限个步骤之后终止。算法必须能在有限个步骤之后终止。算法中的每一步都是可以执行的。算法中的每一步都是可以执行的。算法的每个步骤都具有确定的含义。算法的每个步骤都具有确定的含义。自然语言自然语言流程图流程图伪代码伪代码用日常所用语言来描述算法的步骤。用日常所用语言来描述算法的步骤。流程图是用图形表示算法的一种常用工具。流程图是用图形表示算法的一种常用工具。采用一种类似程序设计语言的代码来描述算法。采用一种类似程序设计语言的代码来描述算法。算法就是解决一个特定问题而采取的确定的,有限的步骤。算法就是解决一个特定问题而采取的确定的,有限的步骤。对于同一个问题,不同算法解决问题的效率不
15、同。对于同一个问题,不同算法解决问题的效率不同。课堂实践练习 2.某地有两种不同类型的出租车,其计费标准分别为:甲车3千米起步,价格10元,3千米以上(含3千米)每千米为2元;乙车3千米起步,价格8元,3千米以上(含3千米)每千米2.2元。设计算法,在不同里程时给出最优资费的用车选择最优资费的用车选择。选用一种描述方描述方法法对该算法进行描述,并解释其中使用到的基本结构基本结构。1.小明早上从起床到出门上学需要洗漱(5min),烧水(10min),准备早餐(10min),听新闻(10min),请你为他设计一个合理的合理的算法步骤。课堂实践练习 J J甲车的起步价甲车的起步价Y Y乙车的起步价乙车的起步价x1x1甲车起步里程后,每千米的费用甲车起步里程后,每千米的费用x2x2乙车起步里程后,每千米的费用乙车起步里程后,每千米的费用n n计划行使的里程数计划行使的里程数J,Y,x1,x2,nJ,Y,x1,x2,nn n 3 3甲车省钱甲车省钱JYJYJYFalseFalseTrueTrue乙车省钱乙车省钱两车相同两车相同FalseFalse结束结束流程图流程图2.某地有两种不同类型的出租车,其计费标准分别为:甲车3千米起步,价格10元,3千米以上(含3千米)每千米为2元;乙车3千米起步,价格8元,3千米以上(含3千米)每千米2.2元。