资源简介 (共22张PPT)2.1 算法的概念及描述一个农民带着一头狼、一只羊和一筐白菜过河,河边只有一条很小的船,他每次只能带三者中的一个过河。农民不在旁边时,狼会吃羊,羊也会吃白菜。问农民怎么才能把他们都带过河去呢?过河的方案:第一步:人带羊过河,人返回,留下羊;第二步:人带狼过河,人带羊返回,留下狼;第三步:人带菜过河,人返回,留下菜;第四步:人带羊过河这属不属于算法呢 学习目标1算法的定义2算法的特征3算法的要素4算法的描述方式1.算法的定义直达总结广义地讲,算法指的是解决问题或完成任务的一系列步骤。在计算机科学领域内,算法指的是用计算机解决问题的步骤,是为了解决问题而需要让计算机有序执行的、无歧义的、有限步骤的集合。2.算法的特征(1)有穷性:一个算法的处理步骤必须是有限的。(2)可行性:一个算法中的每一步操作与要求都应该是算法执行者(人或者机器)可以实施的,同时在现实环境中能做到并且能在有限的时间内完成。(3)确定性:算法中对于每个步骤的执行描述必须是明确的。(4)0个或多个输入:算法被执行者实施时,一般需要从外部获取可变的数据。(5)1个或多个输出:算法必须包含至少一个输出,以告诉外界问题求解的结果。过河的方案:第一步:人带羊过河,人返回,留下羊;第二步:人带狼过河,人带羊返回,留下狼;第三步:人带菜过河,人返回,留下菜;第四步:人带羊过河空调运行:(1)设定空调温度t0=26°C;(2)输入室温t;(3)若t请同学们根据上述两个事例,回答算法的五个特征分别体现在哪?3.算法的要素(1)数据:用算法解决问题时,必须明确参与运算的初始数据、运算时产生的中间数据以及代表问题解决的结果数据。(2)运算:在对数据进行运算时,必须明确每一步的运算是什么、对哪些数据进行运算等。(3)控制转移:在算法执行过程中,有时需要根据数据或运算结果的特点进行不同的处理,这时就需要运用控制转移来执行不同的操作。3.算法的要素空调运行:(1)设定空调温度t0=26°C;(2)输入室温t;(3)若t运算控制转移数据4.算法的描述(1)自然语言(2)流程图(3)伪代码(4)计算机程序设计语言4.算法的描述(1)自然语言(1)输入变量flag的值。(2)若flag的值为1,则设置指示灯为绿色,输出“空车位”;否则,设置指示灯为红色,输出“非空车位”。(2)流程图(2)流程图(3)伪代码(1)条件判断语句格式1:if 条件 then (语句序列1)else (语句序列2)格式2:if 条件 then (语句序列1)(2)循环语句格式:while 条件 (循环体)(3)伪代码flag←车位探测结果;If flag=1 then(指示灯绿色输出“空车位”)Else(指示灯红色输出“非空车位”)(4)计算机程序设计语言flag=int(input(“输入车位状态值:”))if flag==1:print(“绿色”)print(“空车位”)else:print(“红色”)print(“非空车位”)4.算法的描述四种描述方法对比 自然语言 流程图 伪代码 计算机程序设计语言优点 通俗易懂 结构清晰、寓意明确 直观简洁、写法灵活 能让计算机理解并执行缺点 容易产生歧义 (武松打死老虎) 情况复杂时,过多的流程线影响算法的理解 错误不易排查,计算机无法理解并执行 有一定程序设计语言基础的人才能看懂试一试:请同学们分别用流程图和Python语言将空调运行的算法描述出来!自然语言描述:空调运行:(1)设定空调温度t0=26°C;(2)输入室温t;(3)若t流程图描述:计算机程序设计语言:t=int(input(“当前的室温是:”))y=int(input(“设定空调温度:”))if tprint(“压缩机暂停工作”)else:print(“压缩机开始工作”)课堂总结1.算法的定义:2.算法的特征:3.算法的要素:4.算法的描述:广义地讲、计算机科学领域有穷性、可行性、确定性、0个或多个输入、1个或多个输出数据、运算、控制转移自然语言、流程图、伪代码、计算机程序设计语言练一练1.关于算法,下列叙述正确的是 A.一种算法只能用一种程序语言来实现B.流程图是算法的一种表示形式C.解决任何一个具体问题只有一种算法D.算法是解题方法的精确描述,它可以有无限个步骤2.已知圆柱体底面圆半径r和高h,求圆柱体体积V的算法如下:①V=πr h ②输入底面圆半径r ③输出体积V ④输入圆柱体高h计算圆柱体体积V,正确的次序是 A.①②④③ B.③②④① C.④②③① D.②④①③BD本节课结束!感谢聆听! 展开更多...... 收起↑ 资源预览