《算法和算法的表示.ppt》由会员分享,可在线阅读,更多相关《算法和算法的表示.ppt(23页珍藏版)》请在三一办公上搜索。
1、算法和算法的表示,By John,使用计算机解决问题的一般过程:书本P45,1.分析问题确定要用计算机做什么主要目标是确定让计算机做什么,即确定任务,2.寻找解决问题的途径和方法主要目标是解决“怎么做”的问题,即设计算法。,3.用计算机进行处理,什么是算法?,算法的特点是什么?,把大象装冰箱,一共分几步?,第一步 先把冰箱门打开,第二步 把大象放进去,第三步 把冰箱门关上。,看小品,思考,狼羊菜过河,一人要将一狼、一羊、一棵蔬菜这些东西都运送到河对岸。渡船太小,一次只能带一样。因为狼要吃羊,羊会吃蔬菜,所以狼和羊,羊和蔬菜不能在无人监视的情况下相处。你能做到么?,算法是指解题方案的准确而完整的
2、描述,是一系列解决问题的清晰指令。在计算机领域,算法的含义是在编写程序交给计算机执行前需要先确定解决问题的思路和方法,并要正确的写出求解步骤。,算法的特征,1.有穷性:一个算法必须保证它的步骤是有限的,即它是能终止的2.确定性:算法中的每个步骤必须有确切的含义,而不应当是含糊的,模棱两可的。3.能行性:算法中的每个步骤都必须是实际能做的,能在有限的时间内完成的。4.有0个或多个输入:初始数据可从外界输入,也 可包含在算法中5.有一个或多个输出:没有输出的算法是毫无意义 的。,下面关于算法的错误说法是 A)算法必须有输出 B)算法必须在计算机上用某种语言实 现C)算法不一定有输入 D)算法必须在
3、有限步执行后能结束,随堂练习,答案:B,算法的表示方法,用自然语言表示 缺点:容易引起歧义,造成误解;对较复杂的问题,用自然语言又难以表达准确。用流程图表示 优点:直观、形象 缺点:计算机都不能识别和执行。用伪代码算法 只有用计算机能理解和执行的程序设计语言把算法表示出来,然后把程序输入计算机并执行,计算机才能按照预定的算法去解决问题。,“流程图”的基本符号,算法开始1.输入a的值和b的值2.如果ab,则输出a3.如果ab,则输出b算法停止,自然语言,a:任意数b:任意数,流程图,a:任意数b:任意数,输出x,y的值,x x+1,y y+2,输出y值,xy?,输出x值,输出y值,x100?,x
4、 x+1,算法的三种基本模式:,顺序模式:在算法流程中,执行完一个处理语句1后,顺序执行紧跟着的下一个语句2,一直这样下去,知道遇到其他模式,选择模式:在算法流程中,往往需要对某个情况e进行判断,当结果为真时,执行yes指向的流程线下的语句1,否则执行no指向的流程线下的语句2.,语句1,语句2,Y,N,循环模式:在算法流程中,对某个情况e进行判断,当结果为真时,执行yes指向的流程线下的语句组1,然后再次判断情况e,如果结果还为真,则再次执行语句组1,并继续判断情况e,重复上述过程,知道判断的结果为假,执行no指向的流程线下的其他语句。,1任何一个算法都必须有的基本结构是()A顺序结构 B条件结构 C循环结构 D三个都有答案:A,2a表示“处理框”,b表示“输入、输出框”,c表示“起、止框”,d表示“判断框”,以下四个图形依次为()Aabcd Bdcab Cbacd Dcbad答案:D,随堂练习,3一个算法的程序框图如图所示,如果输入的x值是20,则输出的结果是_答案:20,4.函数y,写出求该函数值的算法及程序框图 解答:算法如下:第一步:输入x.第二步:如果x0,则y2;如果x0,则y0;如果x0,则y2.第三步:输出函数值y.相应的程序框图如下图:,开始,输入一个正整数n,输出S的值,结束,S=0,i=1,S=S+i,i=i+1,in,Y,N,该流程图的作用?,