- 5
- 0
- 约2.49千字
- 约 20页
- 2016-12-06 发布于江苏
- 举报
第二章 本章要点 算法的基本概念 算法的描述 程序的基本结构 主要内容 2.1 算法的概念 2.2 简单算法举例 2.3 算法的特性 2.4 怎样表示一个算法 2.5 结构化程序设计方法 第二章 程序的灵魂-算法 第二章 程序的灵魂-算法 §2-1 算法的概念 §2-1 算法的概念 §2-1 算法的概念 §2-2 简单算法举例(自然语言描述法) §2-2 简单算法举例 改进:设两个变量,一个代表被乘数,另外一个代表乘数。今设p为被乘数,i为乘数,结果放在p中 §2-2 简单算法举例 §2-2 简单算法举例 §2-2 简单算法举例 例2.3:判定2000-2050年中的每一年是否闰年,将结果输出。 ?闰年条件: 能被4整除,但不能被100整除;(例如:1996年,2004年) 能被100整除,又能被400整除;(例如:1600年和2000年) 算法表示如下:设y为被检测的年份。 §2-2 简单算法举例 S1:2000 → y S2:若y不能被4整除,输出y “不是闰年”,转S6。 S3: 若y能被4整除,不能被100整除,输出“y是闰年”。转S6。 S4:若y能被100整除,又能被400整除,输出“y是闰年”;否则输出“y不是闰年”。转S6。 S5: 输出“y不是闰年”。 S6: y+1→y S7: 当y≤2500时,转S2;若y>2500,算法停止。 例2.3框图 §2-2 简单算法举例 例2.4:求 §2-2 简单算法举例 例2.5:对于一个大于或等于3的正整数,判断它是不是一个素数。 ?素数:是指除了1和该数本身之外,不能被其他任何整数整除的数。 例:13是素数,因为它不能被2,3,4,…,12整除 ?方法:判断一个数n(n≥3)是否素数的方法是:将n作为被除数,将2到(n-1)各个整数轮流作为除数,如果都不能被整除,则n为素数。 §2-2 简单算法举例 算法可表示如下: S1: 输入n的值 S2: i = 2 ( i 作为除数) S3: n被 i 除,得余数r S4: 如果 r = 0,表示n能被 i 整除,则打印n “不是素数”,算法结束,否则执行S5 S5: i + 1 ?i S6: 如果i ≤n-1,返回S3;否则打印n“是素数”,然后结束。 §2-3 算法的特性 有穷性:一个算法必须在执行有穷步之后结束。 确定性:算法的每一步必须是确切定义的,对于相同输入必须得到相 同结果。 有效性:算法的每一步都是能够实现的,即可操作的。 输 入:算法有零个或多个输入。 有输出:算法执行完毕,必须有一个或若干个输出结果。 小结 需要复习的知识点 ?算法(algorithm)的概念 对特定问题求解步骤的一种描述 ?沃思公式(Wirth): 数据结构+算法=程序 ?沃思公式的扩展: 程序=数据结构+算法+程序设计方法+编程语言 ?算法的五个特性 有穷性,确定性,零个或多个输入,一个或多个输出,有效性。 C语言程序设计(第三版) * ?程序应包括的内容: ?对数据的描述 在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)。 ?对操作的描述 即操作步骤,也就是算法(algorithm)。 ?沃思公式(Wirth): 程序=数据结构 + 算法 ?沃思公式的扩展: 程序=数据结构+算法+程序设计方法+编程语言 数据结构 算法设计与分析 面向过程 面向对象 面向组件 软件 工程 程序设计 方法学 什么叫算法? ?算法(algorithm)是对特定问题求解步骤的一种描述。 ?算法(algorithm)是为解决一个问题而采取的方法和步骤。 算法:做什么?怎么做? 算法的分类: ?数值运算算法 求方程的根;求函数的定积分;矩阵运算… ?非数值运算算法 事务管理;图书检索;人事管理;信息查询 ...… 算法的要素: ?正确 ?简单 1+2+3+…+98+99+100=? 例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*3*...*1000,要写999个步骤。 例2.1 求1*2*3*4*5. S1:使p=1 S2:使i=2 S3:使p*i,乘积仍放在变量p中,表示为p*i?p S4:使i的值加1,即i+1 ? i S5:如果i不大于5,返回重新执行步骤S3、S4、S5;否则,算法结束。最后得到的p的值就是
您可能关注的文档
- 第7部分物流决策支持系统学习课件.ppt
- 各类学历英文翻译学习课件.ppt
- 句式变换解析学习课件.ppt
- 中美称谓不同的文化差异学习课件.ppt
- 主界面学习课件.ppt
- 群论第一部分物理学中的对称性学习课件.ppt
- Windows2000advance的安装学习课件.ppt
- 国际金融第三部分学习课件.ppt
- 机械能守恒定律的应用ae学习课件.ppt
- 图像和性质2(y=ax2+k)学习课件.ppt
- 2026年钢纤维切割机项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年柚木躺床项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年行星式快速超细研磨机项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年普梳细布项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年童花伞项目可行性研究报告(市场数据调查、监测研究).docx
- 2026年边缘计算封装测试行业发展报告.docx
- 2025年新材料十年突破:高性能与环保化设计报告.docx
- 美妆电商十年发展:2025年直播营销营销费用与正品保障ROI报告.docx
- 2026年能源行业氢能技术发展与商业化路径报告.docx
- 2025年美发行业五年区域发展差异与市场潜力报告.docx
最近下载
- 2026年牛津译林版中考英语新课标1500个单词背诵清单.pdf
- 疥疮诊疗中国专家共识(2026版)解读PPT课件.pptx VIP
- 《烟雾病和烟雾综合征诊断与治疗中国专家共识(2024)》解读PPT课件.pptx VIP
- 2024年改良型新药行业研究报告及未来五至十年预测分析报告.docx
- 乡镇民主生活会批评与自我批评.docx VIP
- 陕西凤翔县马家庄秦墓出土的出土陶罐.docx VIP
- 采血后预防淤青的按压方式.pptx VIP
- 纺织厂供配电系统设计.doc VIP
- 乡镇领导班子成员相互批评意见.docx VIP
- 30.XX中专职业学校“十五五”五年中长期发展规划(2026-2030年).pdf
原创力文档

文档评论(0)