算法的概念PPT课件
算法的概念
• 算法是指解决给定问题的有穷操作步骤 的描述。
• 算法是计算机科学中的重要概念之一, 它指明了问题的求解过程,是对给定问0年10月2日
1
【例4.1】给定任意两个整数,按从小到大 顺序排列。
解决这一问题的算法可描述如下:
⑴输入两个整数A和B;
⑵比较A和B的大小,若A<B,则分别输 出A和B,且计算到此结束,否则(A≥B), 分别输出B和A,且计算到此结束。
6
⒉ 用流程图表示
流程图一般可分为传统流程图和结 构化流程图(N-S图)。
所谓传统的流程图是指用几何框、箭 头、连线以及文字说明相结合的一种图 形。用流程图表示算法不仅直观、灵活, 而且易于理解。
2020年10月2日
7
2020年10月2日
起始或终止框 计算处理框(过程)
条件判断框(决策)
输入输出框(数据)
2020年10月2日
19
a
a
不成立
条件
A
成立 A
不成立 条件
成立
b 当型
2020年10月2日
b
直到型
20
两种循环结构的区别:
⑴执行情况不一样。当型结构是先判断 循环条件,当条件成立时,才执行语句 块A, 若循环条件一开始就不成立,则 语句块A一次也不执行。而直到型结构是 先执行语句块A,后判断循环条件,且语 句块A至少要执行一次。
16
⒉ 分支结构
它根据给定的条件在两条可供选择的 分支中选择其中的一条执行。当条件成 立时,执行语句块A,否则执行语句块B。 执行完语句块A或语句块B后,都从b点 出口。因此就整个分支结构来讲,它仍 然只有一个入口(a) 和一个出口 (b)。
2020年10月2日
17
成立 A
a 条件
不成立 B
b
2020年10月2日
流向或路径
连接点
8
开始
输入两个整数A和B
成立 输出A和B值
不成立 A<B
输出B和A值
2020年10月2日
9
结束
2020年10月2日
10
3.用伪代码表示
所谓伪代码表示是指用介于自然语言和 计算机语言之间的一种代码来描述算法。 用伪代码表示例4.1 的算法。
INPUT A,B
IF A<B
PRINT A,B
2020年10月2日
5
算法的表示方法
⒈ 用文字叙述形式表示
可以用中文或英文叙述的形式来描 述算法采用文字叙述形式表示算法通俗 易懂,但文字冗长,而且容易产生“歧 义”(即对同一段文字,不同的人可能 会有不同的理解)。因此,除了一些非 常简单的问题外,一般不采用文字叙述 形式来表示算法。
2020年10月2日
⑵循环结束条件不一样。当型结构是条 件不成立时结束循环,而直到型结构是 条件成立时结束循环。
2020年10月2日
21
由三种基本结构(可以是其中的一 种、二种或三种)构成的程序,称为结 构化程序。一个结构化程序以及三种基 本结构中的每一种都应当具有以下特点:
⑴程序执行的路径只有一个入口和一个 出口,在入口和出口之间是一种基本方 盒或逻辑结构。
其特点是各部分按照出现的先后顺序执 行。它由A和B两个语句块组成,且仅有 一个入口(a)和一个出口(b)。最 简单的情况是每一语句块中只含有一条 不产生控制转移的执行语句。
2020年10月2日
15
每个语句块本身也可以是一个顺序结构, 因此一个顺序结构可以由许多顺序执行 的语句组成。
a A
B b
2020年10月2日
2020年10月2日
13
不到正确结果,应该检查前几步是否有 误,改正后再上机运行。
⑹编写文档。编写文档是程序设计的必
要组成部分。从问题的提出开始一直到 程序运行结束,都应该全面、完整地编 写文档资料,内容包括技术文档资料和 使用文档资料,这是后期使用和维护程 序所必需的资料。
⑺维护。程序所处理的各种数据是非常
3
⑷数据输入。每个算法都要求有原始数据 输入,即给定计算初值。算法不同,输 入的原始数据可能不同,但缺少原始数 据的算法则是一个不完善的算法。
⑸信息输出。一个算法至少要有一个有效 的信息输出,这就是问题求解的结果。
2020年10月2日
4
衡量一个算法好坏的标准是:
算法应当正确,易于阅读和理解, 实现算法所占存储空间要少,运算时间 短,实现方法简单可行等。
2020年10月2日
2
算法的基本特征
⑴有穷性。一个算法应包括有限的操作步 骤,能在执行有穷的操作步骤之后结束。
⑵确定性。算法的计算规则及相应的计算 步骤必须是唯一确定的,既不能含糊其 词,也不能有二义性。
⑶可行性。算法中的每一个步骤都是可以 在有限的时间内完成的基本操作,并能 得到确定的结果 。
2020年10月2日
18
⒊ 循环结构
循环结构也叫重复结构,即重复执行某
些操作。根据其执行情况和循环结束条 件的不同可分为当型循环(也称WHILE 型结构)和直到型循环(也称UNTIL型 结构)。当型循环结构,它是当满足某 个指定的条件时,反复执行语句块A,否 则不执行。直到型循环结构,它是反复 执行语句块A,直到条件满足为止。 它 们也只有一个入口(a)和一个出口 (b)。
宝贵的信息资源,其宝贵价值就在于信
息的真实性、准确性和有效性。要保证
信息的真实性和准确性,就需要及时地
2020进年10月行2日增、删和更新等维护工作。
14
4.3 结构化程序设计概述
4.3.1 结构化程序的三种基本结构
结构化程序规定了三种基本的结构, 即顺序结构、分支结构和循环结构。
⒈ 顺序结构
顺序结构是一种最简单、最基本的结构,
ELSE
PRINT B,A
ENDIF
2020年10月2日
11
利用计算机处理问题的过程
用计算机所能接受的形式把解题的算 法用程序设计语言描述出来的工作叫程 序设计,它包括了大量的工作和许多具 体的步骤。其中这些步骤包括以下内容:
⑴分析问题。即明确实际问题的要求,给 定的数据有哪些,需要输出什么样的数 据,需要进行哪种处理。
⑵确定求解方案。
2020年10月2日
12
⑶算法分析。根据处理方案,具体列出让 计算机如何进行操作的步骤(算法), 并进行算法的准确性和有效性分析,找 出合理的算法。
⑷编写程序。拟定算法的步骤和说明后, 使用某种程序设计语言,以书面形式将 算法描述出来,所得到的编程结果就是 源程序。
⑸上机调试运行程序。将编写好的源程序 输入计算机并调试、运行,如果程序是 正确的,应能得到预期的结果,如果得