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

第一章+计算机程序设计与算法.pptVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
§1.4.4 用N--S流程图表示算法 1973年美国学者I.Nassi和B.Shneiderman提出了一种新的流程图形式。在这种流程图中,完全去掉了带箭头的流程线。全部算法写在一个矩形框内,在该框内还可以包含其它的从属于它的框,或者说,由一些基本的框组成一个大的框。这种流程图又称N--S结构化流程图 。 N--S流程图用以下的流程图符号: (1)顺序结构 (2)选择结构 (3)循环结构 A 直到P1不成立 用三种N--S流程图中的基本框,可以组成复杂的N--S流程图。图中的A框或B框,可以是一个简单的操作,也可以是三个基本结构之一。 A框可以是一个选择结构 B框可以是一个循环结构 C/C++程序设计 第1章 计算机程序设计与算法 数字媒体技术教研室 乐小燕 * 学习目标 理解算法的概念 掌握算法的表示 掌握流程图的绘制 熟悉结构化程序设计方法 * 数字媒体技术教研室 乐小燕 一个程序应包括两个方面的内容: 对数据的描述:数据结构(data structure) 对操作过程的描述:算法(algorithm) 著名计算机科学家沃思提出一个公式:  数据结构 + 算法 = 程序 main( ) { 说明语句 数据结构 语句 执行语句 算法设计 } 数字媒体技术教研室 乐小燕 * 数据结构+算法+程序设计方法+编程工具 完整的程序设计应该是: §1.1 算法的概念 广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。 方法1:1+2,+3,+4,一直加到100 方法2:100+(1+99)+(2+98)+…+(49 +51)+50 = 100 + 49×100 +50 对同一个问题,可有不同的解题方法和步骤 例: 求 §1.1 算法的概念 为了有效地进行解题,不仅需要保证算法正确,还要考虑算法的质量,选择合适的算法。希望方法简单,运算步骤少。 计算机算法可分为两大类别: 数值运算算法:求数值解,例如求方程的根、求函数的定积分等。 非数值运算:包括的面十分广泛,最常见的是用于事务管理领域,例如图书检索、人事管理等。 §1.2 简单算法举例 例1: 求1×2×3×4×5 步骤1:先求1×2,得到结果2 步骤2:将步骤1得到的乘积2再乘以3,得到结果6 步骤3:将6再乘以4,得24 步骤4:将24再乘以5,得120 如果要求1×2×…×1000,则要写999个步骤 S1:使t=1 S2:使i=2 S3:使t×i,乘积仍放在变量t中; S4:使i的值加1;。 S5:如果i大于5,算法结束;否则,返回重新执行步骤S3以及其后的步骤S4和S5。 最后得到t的值就是5!的值。 可以设两个变量:一个变量代表被乘数,一个变量代表乘数。不另设变量存放乘积结果,而直接将每一步骤的乘积放在被乘数变量中。设p为被乘数,i为乘数。用循环算法来求结果, 算法可改写: S1:t=1 S2:i=2 S3:t=i*t S4:i++ S5:若i999,程序结束。否则,返回S3。 如果题目改为:求1×3×5×……×999算法只需作很少的改动: 用这种方法表示的算法具有通用性、灵活性。S3到S5组成一个循环。 例2 有50个学生,要求将他们之中成绩在80分以上者打印出来。设n表示学号, ni代表第i个学生学号。用G代表学生成绩 , gi代表第i个学生成绩,算法表示如下: S1:i=1 S2:如果gi≥80,则打印,否则不打印。 S3:i++ S4:如果i≤50,返回S2,继续执行。否则算法结束 变量i作为下标,用来控制序号(第几个学生,第几个成绩)。当i超过50时,表示 已对50个学生的成绩处理完毕,算法结束。 例3 求 算法如下 : S1:sign=1 S2:sum=1 S3:i=2 S4:sign=(-1)×sign S5:term=sign×(1/i) S6:sum=sum+term S7:i=i+1 S8:若i≤100返回S4,否则算法结束。 单词作变量名,以使算法更易于理解: sum表示累加和,i是循环变量,sign代表数值的符号,term代表某一项。 反复执行S4到S8步骤,直到分母大于100为止。一共执行了99次循环,向sum累加入了99个分数。sum最后的

文档评论(0)

微微 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档