算法描述与设计课件ppt.ppt
篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统 帮助这个人用船把狼、羊和一箱菜运送到河对面,但是有苛刻的附加条件:(1)船一次只能运一样;(2)当人不在时,狼会吃羊,羊会吃菜。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统v第一步:运羊过河,回来v第二步:运菜过河,并运羊回来v第三步:运狼过河,回来v第四步:运羊过河将过河的方法描述出来:篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统 一、算法的概念解决问题的方法和步骤篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统二、算法的特征v有穷性:执行有限步之后结束,且每一 步的执行时间也都是有限的v确定性:每一步都有确切的含义v输 入:有零个或多个输入v输 出:至少产生一个输出v可行性:原则上能精确运行,用纸和笔 做有限次运算后即可完成篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统三、算法的描述v1、用自然语言来描述。v2、用流程图来描述。v3、用伪代码描述算法。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统1、用自然语言来描述。什么是自然语言?人们日常生活中使用的语言 第一步:运羊过河,回来第二步:运菜过河,并运羊回来第三步:运狼过河,回来第四步:运羊过河通俗易懂,但缺乏直观性,不简洁,且易产生歧义。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统想起来了。v那天发生的事情我终于想起来了。v小明躺了一天,想起来了。咬死了猎人的狗 发现了敌人的哨兵没有买票的人 篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统练习一:已知变量x和y中分别存放了数据,现在要交换其中的数据。用自然语言描述算法。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统算法描述 第1步:将x中的数据送给变量m,即 xm;第2步:将y中的数据送给变量x,即 yx;第3步:将m中的数据送给变量y,即 my。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统2、用流程图来描述也称程序框图,它是算法的一种图形化表示方法。什么是流程图?直观易懂、逻辑关系清晰,不容易产生歧义。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统组成流程图的流程图符号开始或结束输入或输出处 理判 断连 接 线开始结束篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统第一步:运羊过河,回来第二步:运菜过河,并运 羊回来第三步:运狼过河,回来第四步:运羊过河开始结束运羊过河,回来 运菜过河,并运羊回来运狼过河,回来运羊过河例:将过河的算法用流程图描述出来篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统练习二:将交换两个变量的算法用流程图描述。开始结束xmyxmx篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统 例:任意输入一个实数到变量X,求下面函数的Y值:Y=X(X0)2X(X0)篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统N结束X大于0?开始输出Y输入一个实数到变量XY判断框只能有两个出口Y=x Y=2xY=x(x0)0(x=0)2x(x0)篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统结束X大于0?开始YNX等于0?Y N输入一个实数到变量XY=xY=0Y=2X输出Y篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统分析流程图结束XY?开始YN输入3个数到变量X,Y,ZX CY C输出CZC?YNZ C篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统3、用伪代码来描述伪代码是介于自然语言和计算机语言之间的一种算法描述,在伪代码描述中,关键词一般用英文单词.什么是伪代码?简单、易懂,容易修改,且容易转化为程序语言代码。篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统例:用伪代码描述求解分段函数 的算法输入实数到变量xIF x大于0 THEN y=xELSE y=2xEND IF 打印y篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统 思 考算法描述的比较自然语言描述 流程图描述直观清晰 确定性烦琐程度是否容易修改通俗易懂篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统 小 结 一、算法的概念 二、算法的描述 1、用自然语言描述 2、用流程图描述 3、用伪代码描述篮球比赛是根据运动队在规定的比赛时间里得分多少来决定胜负的,因此,篮球比赛的计时计分系统是一种得分类型的系统作业:v从十个数中挑选出最大的数。