- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课件 第2章 程序的灵魂---算法 2-1 算法的概念(理解) 2-2 简单算法举例(理解) 2-3 算法的特性(理解) 2-4 怎样表示一个算法(熟练掌握) 2-5 结构化程序设计方法(了解) 第2章 程序的灵魂---算法 2-1 算法 2-1 算法 2-1 算法 2-2 简单算法举例 例1-1 计算任意长方形的面积 例1-2 计算 1x2x3x4x5=? 例1-3 计算1-1/2+1/3-...+1/99-1/100=? 例1-4 判断一个数是否素数 计算任意长方形的面积 问题分析: 输入长和宽 计算面积=长X宽 输出面积 数据存放: 长-len,宽-wid,面积-area 设计算法: 输入len和wid的值; 计算area =len×wid; 输出面积area的值; 1-1/2+1/3-...+1/99-1/100=? 提示: 首先考虑实现1+2+3+4+…+100 其次考虑实现1/1+1/2+1/3+1/4+...+1/100 最后考虑实现1/1-1/2+1/3-1/4+...+1/100 思路: S1:SUM=0,I=1 S2:SUM=SUM+ I S3: I=I+1 S4:如果I=100则转 S2 ,否则转 S5 S5:打印SUM的值 判断一个数是否素数 分析: 本题要点是先搞清楚什么是素数。 思路: 输入一个大于3的正整数N 定义一个变量 I 从 2~N-1 ,I 每取一个值做: 如果N能被I整除则中断循环,N不是素数;否则 I继续取下一个值; 若当I取完所有值都不能整除N,则N是素数 2.3 算法的特性 有穷性 指一个算法经过有限步骤后停止(或在合理范围内) 确定性 算法的每一步都应当是确定的,无歧义的 有效性 算法的每一步计算机都能有效执行 有0个或多个输入 一个算法可以没有输入,即执行时无需输入信息 有1个或多个输出 一个算法必须有输出,运算过程或运算结果 2.4 怎样表示一个算法 常用的算法描述方法: 结构化程序设计方法 一、结构化程序设计的三种基本结构 结构化程序设计方法 二、相关术语 程序:使用语言给计算机的一组指令序列。 结构化程序:用三种基本结构组成的程序就是结构化程序。 程序设计:为求解特定问题而编写的正确有效的程序。 程序设计语言:编写程序所用的语言。 结构化程序设计方法 1、顺序结构 结构化程序设计方法 2、选择结构 结构化程序设计方法 3、循环结构:根据条件P决定是否重复执行循环体中的操作 结构化程序设计方法 循环结构 结构化程序设计方法 二、三种基本结构特点: 只有一个入口和一个出口; 结构内每一部分都有机会执行到; 结构内不存在“死循环”。 常用的算法描述方法: N-S图: N-S图: 常用的算法描述方法: 例题:计算s=∑n,写出其算法 例题:计算s=∑n,写出其算法 2.5 结构化程序设计方法 核心思想:自顶向下,逐步细化,模块化设计,结 构化编码。 强调程序设计的风格和程序结构的规范化。 优点:易编、易读、易懂、易维护。 本章小结 本章介绍算法及算法表示的基本知识 重点: 分析问题,设计算法 作业: P36习题第4、8题 * 本章要点 算法的概念 算法的表示 结构化程序设计方法 一.程序的概念 程序,就是一系列的操作步骤,计算机程序就是由人事先规定的计算机完成某项工作的操作步骤。每一步骤的具体内容由计算机能够理解的指令来描述,这些指令告诉计算机“做什么”和“怎样做”。 二.程序设计语言的概念 编写计算机程序所使用的语言称为程序设计语言 一个程序应包括两个方面的内容: 对数据的描述:数据结构(data structure) 对操作的描述:算法(algorithm) 著名计算机科学家沃思提出一个公式: 数据结构 + 算法 = 程序 数据结构+算法+程序设计方法+语言工具 完整的程序设计应该是: 定义:算法是指为解决一个问题而采取的方法和步骤。 分类:数值运算算法和非数值运算算法 算法有优劣 为了有效地进行解题,不仅需要保证算法正确,还要考虑算法的质量,选择合适的算法。希望方法简单,运算步骤少。 算法描述 求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:使p=1 S2:使i=2 S3:使p×i,乘积仍放在变量p中,可表示为: p×i=p S4:使i的值加1,即i+1 = i。 S5:如果i≤5,返回步骤S3;否则,
文档评论(0)