(共15张PPT)
算法的概念及描述
思考:要把大象装冰箱总共分几步?要把大象装冰箱总共分几步三步第一步 把冰箱门打开第二步把大象装进去第三步把冰箱门带上算法的定义广义:解决问题或完成任务的一系列步骤不仅仅指计算任务(算术),也可以是社会生活中各种事务的处理。计算机科学领域:用计算机解决问题的步骤,是为了解决问题而需要让计算机有序执行的、无歧义的、有限步骤的集合。为了让计算机理解算法中的步骤,用计算机能理解的语言来描述算法并将其输入到计算机中,这个过程就称为计算机程序设计不仅包含了数值计算,还包含了非数值计算的数据处理求根公式求解一元二次方程的算法一元二次方程的解的意义:能使一元二次方程左右两边相等的未知数的值称为一元二次方程的解。利用一元二次方程根的判别式( )可以判断方程的根的情况。过程方法具体描述:(1)输入一般形式下的二次项系数a,一次项系数b,常数项c(2)计算判别式 的值(3)若 ,则计算 ,输出字符串“方程有实数解”,并输出x的值;否则,输出字符串“方程无实数解”算法的特征求根公式求解一元二次方程的算法:(1)输入一般形式下的二次项系数a,一次项系数b,常数项c;(2)计算判别式的值;(3)若 ,则计算 ,输出字符串“方程有实数解”,并输出x的值;否则,输出字符串“方程无实数解”。有穷性:算法的有穷性是指算法必须能在执行有限个步骤之后终止,也即是说操作步骤不是无限的,必须是有限的可行性:算法中执行的任何步骤都是可以被分解成基本的可执行的操作步骤,即每个步骤都是要在有限时间内完成的。算法的可行性也被称之为有效性确定性:算法的确定性是指算法的每一步骤必须有确切的含义,而不是模棱两可的有0个或多个输入:一个算法有0个或者多个输入,所有0个输入是指算法本身给出了条件,因此不需要输入数据有1个或多个输出:一个算法有一个或多个输出,程序将最后要算的结果输出。在一个完整的算法中至少会有一个输出,没有输出的算法是毫无意义的算法的特征例1:写出所有的素数例2:找出班级里技术成绩最好的人不符合“有穷性”特征,可以改为写出10亿以内的所有素数不符合“确定性”特征,可以改为找出班里本次技术测试成绩最高的人例3:为什么算法必须要有“输出”,但有时却可以没有“输入”?算法必须包含至少一个输出,以告诉外界问题求解的结果。如果问题求解时所有数据都是不变且已知的,则所需数据包含在算法中,不必再在执行时输入数据,否则需要包含一个或多个输入算法的要素求根公式求解一元二次方程的算法:(1)输入一般形式下的二次项系数a,一次项系数b,常数项c(2)计算判别式的值(3)若 ,则计算,输出字符串“方程有实数解”,并输出x的值;否则,输出字符串“方程无实数解”要素含义数据明确参与运算的初始数据、运算时产生的中间数据以及代表问题解决的结果数据运算明确每一步的运算是什么、对哪些数据进行运算等控制转移有时需要根据数据或运算结果的特点进行不同的处理,这时就需要运用控制转移来执行不同的操作a,b,c, ,x加减乘除,开根,平方若......,则......;否则........1.设定空调温度t0=26°C;2.输入室温t;3.若t<t0,压缩机暂停工作;否则,通知压缩机工作数据运算控制转移习题练习例1:下列关于算法的概念及描述,说法正确的是()A.算法就是数学运算方法B.算法的第一个执行步骤必须是数据输入C.算法的一个步骤可以被执行多次D.算法只能用自然语言进行描述C习题练习例2:算法的有穷性是指()A.算法的步骤必须有限B.算法的最后必须包括输出C.算法中每个操作步骤都是可执行的D.以上说法都不正确A习题练习例3:下列关于算法三要素,表述正确的是()A.算法三要素包括:数据,估算,控制转移B.算法三要素包括:参数,估算,控制转移C.算法三要素包括:数据,运算,控制结构D.算法三要素包括:数据,运算,控制转移D小结1.算法的概念解决问题或完成任务的一系列步骤为了解决问题而需要让计算机有序执行的、无歧义的、有限步骤的集合2.算法的特征有穷性;可行性;确定性;0个或多个输入;1个或多个输出;3.算法的要素数据,运算,控制转移4.算法的描述自然语言、流程图、伪代码、计算机程序设计语言谢谢