网站大量收购独家精品文档,联系QQ:2885784924

第2章 程序的灵魂——算法课件.ppt

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 程序的灵魂——算法课件

第二章 程序的灵魂--算法; 程序设计概述;2.1 算法的概念;买电视机的算法:; 2.2、 简单算法举例;求1×2×3×4×5;例2:求1×3×5×7×9 ×11; 可以看出,用这种方法表示的算法具有通用性、灵活性。s3到s5 组成一个循环,在实现算法时,要反复多次执行s3、s4、s5等步骤,直到某一时刻,执行s5步骤时经过判断,乘数i已超过规定的数值而不返回s3步骤为止。 计算机实现循环是轻而易举。;上述算法稍作改动:将s5步骤写成: s5:若i11,返回s3。 这样会有什么问题?会得到什么结果? s1: 1 ? p; s2: 3 ?i; s3: p ×i ?p; s4: i+2 ?i s5: 若i 11,返回s3;否则,结束。;例2.2:有50个学生,要求将他们之中成绩在80分以上者打印出来;例 2.3:判断2000年---2500年中的每一年是否闰年,将结果输出。 解:闰年的条件是: (1)能被4整除,但不能被100整除的年份是闰年;如1996,2004年 (2)能被100整除,又能被400整除的年份是闰年。如1600,2000年。 不符合这两个条件的年份不是闰年。;成陛借恕台椒貌兴惧背祈闺茨颂罗预穷伊芍勾翠郝盖鸭旁埂栏粱贩批炒脓第2章 程序的灵魂——算法课件第2章 程序的灵魂——算法课件; 算法如下:设y为被检测的年份,可采取以下步骤: s1: 2000 ?y; s2: 若y不能被4整除,则输出y “不是闰年”。然后转到s6. s3: 若y能被4整除,不能被100整除,输出y “是闰年”,然后转到s6。 s4: 若y 能被100整除,又能被400整除,输出y “是闰年”,然后转到s6。 s5: 输出 y “不是闰年”。 s6: y+1 ?y; s7: 当y?2500时,转s2继续执行,如y2500,算法停止。;(1)使S=0(S作为累加变量); (2)使N=1(N代表分母); (3)S+1/N ? S (执行迭代,S为迭代变量); (4)N+1 ? N; (5)若N≤100,转去执行(3)以及其后的各步骤;否则执行(6); (6)打印S的值(即所求之总和)。;2.3. 算法的特性;3. 有0个或多个输入. 输入是指算法执行时从外界获取必要信息。(外界是相对算法本身的,输入可以是人工键盘输入的数据,也可以是程序其它部分传递给算法的数据) 例:不需要输入任何信息,就可以计算出5! 例:如果要计算两个整数的最大公约数,则需要输入2个整数m,n。 4. 有1个或多个输出. 输出即算法得到的结果。算法必须有结果,没有结果的算法没有意义。(结果可以是显示在屏幕上的,也可以是将结果数据传递给程序的其它部分) 5. 有效性.算法的每个步骤都应当能有效执行,并能得到确定的结果。例:b=0,则执行a/b是不能有效执行的。;2.4. 怎样表示一个算法?;2.4.1 用自然语言表示算法; 自然语言就是人们常用的语言,可以是汉语、英语或其他语言。;2.4.2 用流程图表示算法;首尾筒揍钒娱漂抛伪兑玄绸饯刹厦舅弦嫌唬钞疏误溯衅予郝逛芜闽厌烹疹第2章 程序的灵魂——算法课件第2章 程序的灵魂——算法课件;例: 求5!;传统流程图采用流程线指出各框的执行顺序,对流程线的使用没有严格限制。因此,使用者可以不受限制地使流程转来转去,使流程图变得毫无规律。 对这种流程图进行改进,规定几种基本的结构,然后由这些基本结构按一定规律组成算法结构,整个算法结构是由上而下地将各个基本结构顺序排列起来。这样可以在一定程度上,提高算法的质量。;三种基本结构是: (1)顺序结构 按指令的顺序依次执行 (2)判断选择结构: 根据判别条件有选择地改变 执行流程 (3)循环结构: 有条件的重复地执行某个程序块;(1)顺序结构程序设计;;(3)循环结构程序设计;三种基本结构,有以下共同点: l?只有一个入口:不得从结构外随意转入结构中某点。 l?只有一个出口:不得从结构内某个位置随意转出(跳出)。 l?结构中的每一部分都有机会被执行到。(没有“死语句”) l?结构内不存在“死循环”(无终止的循环) 已经证明:由三种基本结构顺序组成的算法结构,可以解决任何复杂问题。由基本结构组成的算法属于“结构化”算法。;2.4.4 用N-S流程图表示算法;顺序结构程序设计;判别选择结构程序设计;循环结构程序设计; 当型循环:当条件p成立时,反复执行循环体中指令,直到p条件不成立为止。当型循环先判断,再决定是否执行循环体,所以在条件p一次都不满足时,循环体可能一次都不执行;

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档