首页 第02章 程序的灵魂—算法

第02章 程序的灵魂—算法

举报
开通vip

第02章 程序的灵魂—算法null第二章 程序的灵魂—算法第二章 程序的灵魂—算法 2.1 算法的概念 2.2 简单算法举例 2.3 算法的特性 2.4 怎样表示一个算法 2.5 结构化程序设计方法第二章 目录2.1 算法的概念2.1 算法的概念2.1 算法的概念程序 = 数据结构 + 算法(2)算法—— 解决问题所采取的方法和操作步骤。 用语句来实现。(1)数据结构—— 数据的类型和数据的组织形式。 高级语言中用变量定义来实现。操作的目的是对数据进行加工处理,以得到期望结果。 数据...

第02章 程序的灵魂—算法
null第二章 程序的灵魂—算法第二章 程序的灵魂—算法 2.1 算法的概念 2.2 简单算法举例 2.3 算法的特性 2.4 怎样表示一个算法 2.5 结构化程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 方法第二章 目录2.1 算法的概念2.1 算法的概念2.1 算法的概念程序 = 数据结构 + 算法(2)算法—— 解决问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 所采取的方法和操作步骤。 用语句来实现。(1)数据结构—— 数据的类型和数据的组织形式。 高级语言中用变量定义来实现。操作的目的是对数据进行加工处理,以得到期望结果。 数据是操作的对象。2.2 简单算法举例2.2 简单算法举例例2.1 设有两个杯子A和B,分别盛放酒和醋, 要求将它们互换。2.2 简单算法举例S1:再取一个杯子C S2: A  C S3: B  A S4: C  B,交换完成。null例2.2 求1+2+3+······+1002.2 简单算法举例S1: 0  s,1  i S2: s+i  s S3: i+1  i。 S4: 如果i≤100,则返回S2;否则输出s,结束。思考:求n!null例2.3 从十个数中求出最大值。2.2 简单算法举例S1: 设计数器i =1,把第一个数放入变量max中。 S2: i +1  i S3: 将max与第i个数进行比较,如果max较小, 则将第i个数放入max中。 S4: 如果i<10,则返回S2;否则输出max,结束。null例2.4 判断某一年y是否闰年。2.2 简单算法举例S1: 如果y能被4整除,转至下一步;否则, S5 。 S2: 如果y能被100整除,转至下一步;否则, S4 。 S3: 如果y能被400整除,转至S4;否则,转至S5。 S4: 输出y“是闰年”,结束。 S5: 输出y“不是闰年”,结束。闰年的条件:①能被4整除,但不能被100整除。 ②能被400整除。null例2.5 对一个大于或等于3的正整数n,判断 它是不是一个素数。2.2 简单算法举例null2.2 简单算法举例S1: 输入n的值 S2: 2  i(i作为除数) S3: n除以i得余数r S4: 如果r=0,则输出n“不是素数”,结束;否则,下一步。 S5: i+1  i2.3 算法的特征2.3 算法的特征1. 有穷性2.3 算法的特征2. 确定性3. 有零个或多个输入4. 有一个或多个输出5. 有效性2.4 怎样表示一个算法2.4 怎样表示一个算法1. 用自然语言表示算法2.4 怎样表示一个算法通俗易懂,但容易出现“歧义性”。2. 用 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 图表示算法直观形象,易于理解。起止框输入 输出框判断框处理框流程线连接点 注释 圣经注释小学小古文100篇及注释小古文100篇及注释简短小古文100篇及注释译文小古文100篇及注释 框null例2.1 流程图2.4 怎样表示一个算法开始准备好A、B、C将A => C将B => A将C => B结束null例2.2 求5!2.4 怎样表示一个算法开始1=>t,1=>ss*t => st+1 => t结束t≤5YNnull例2.3 流程图2.4 怎样表示一个算法开始1=>i,第1个数=>maxi+1=> i第i个数=> max结束i≥10NY第i个数>maxYNnull例2.42.4 怎样表示一个算法开始年份=>y结束y能被100整除y能被4整除YNY是闰年NY不是闰年Yy能被400整除YN三种基本结构三种基本结构(1) 顺序结构2.4 怎样表示一个算法(2) 选择结构aABbapA成立B不成立bnull① 当(while型)循环2.4 怎样表示一个算法② 直到(until型)循环ab(3) 循环结构p1Aabp2A成立不成立成立不成立null用N-S流程图表示算法2.4 怎样表示一个算法(1)顺序结构(2)选择结构(3)循环结构① 当(while型)循环② 直到(until型)循环null例.判断2000-2500年中的每一年是否闰年,将结果输出。2.4 怎样表示一个算法null例. 对一个大于或等于3的正整数,判断它是不是素数。2.4 怎样表示一个算法r=0 w=1 (N) r≠0 w=0 (Y)null3.用伪代码表示算法2.4 怎样表示一个算法书写方便、格式紧凑,易懂。 常用于算法设计阶段。例. 打印x的绝对值 若 x 为正 打印 x 否则 打印-x例. 求5! BEGIN 1  t 2  i while i<=5 { t*i  t i+1  i } print t ENDnull4.用计算机语言表示算法2.4 怎样表示一个算法必须严格遵守所用语言的语法 规则 编码规则下载淘宝规则下载天猫规则下载麻将竞赛规则pdf麻将竞赛规则pdf 。 只有运行了程序才是实现算法。main( ) { int i , t ; t = 1 ; i = 2 ; while ( i<= 5 ) { t = t *i ; i = i +1 ; } printf(“%d” , t); }2.5 结构化程序设计方法2.5 结构化程序设计方法1.结构化程序设计2.5 结构化程序设计方法2. “自顶向下”的模块化程序设计方法将一个大问题按层次分解成多个方便解决小问题的模块的设计思想. C语言是结构化的程序设计语言。 一种设计程序的技术。 自顶向下、逐步细化 单入口单出口控制结构。null3.功能模块2.5 结构化程序设计方法由功能模块组成程序的结构图null例 将1到1000之间的素数打印出来。2.5 结构化程序设计方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 ······null算法: (1) 挖去1;2.5 结构化程序设计方法(2) 用下一个未被挖去的数p去除p后面 各数,把p的倍数挖掉;(4) 纸上剩下的就是素数。null2.5 结构化程序设计方法DEFnull2.5 结构化程序设计方法null4.模块设计原则2.5 结构化程序设计方法 (2) 模块之间的关系简单。 模块相对独立性 (1) 模块实现相对独立的特定子功能。 (3) 模块内数据的局部化。 模块大小适中 模块分解层次清楚本章小结本章小结本章小结 程序的三种基本结构: 顺序、选择、循环 5种描述算法的方法,关键是N-S图 灵活运用三种基本结构, 学会结构化的程序设计方法作业作业作业用N-S图表示以下问题的算法。 有3个数a、b、c,要求将其中最大的数打印出来。 求1+2+3+···+100。 判断一个数n能否同时被3和5整除。 将100~200之间的素数打印出来。 求两个数m和n的最大公约数。
本文档为【第02章 程序的灵魂—算法】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_878527
暂无简介~
格式:ppt
大小:727KB
软件:PowerPoint
页数:0
分类:工学
上传时间:2011-05-26
浏览量:16