算法及算法的描述
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
得到有效结果的。
• 有穷性:算法中的步骤应是有限的。
• 有零个或多个输入:所谓输入是指在执行算法时,需要从外
界获取必要的信息
• 有一个或多个输出:算法的目的是为了求解,“解”就是输
出
算法的表示
• 自然语言 有序地用简洁的语言加数学符号来描述。 • 流程图 用一些图框、流程线以及文字说明来表示算法。 • 计算机语言 计算机语言即用计算机编写的能被计算机 执行的程序。(程序设计语言如QBASIC、VB、PASCAL、 C、 C++、Java等。)
1、自然语言描述算法 【例1】交换两个杯子中的液体。
A
B
C
提问同学,如何处理? 将杯子A中的液体倒给杯子C; 将杯子B中的液体倒给杯子A; 将杯子C中的液体倒给杯子B。
引入一个空杯子
特点:通俗易懂,但文字冗长,容易出现歧义性
流程图
图形符号 符号名称 说明 流线 起始框:一流出线 终止框:一流入线 开始、结束框 表示算法的开始或结束
输入、输出框 框中标明输入、输出的 内容 处理框
判断框
只有一流入线和一流出线 只有一流入线和一流出线
一流入线两流出线(T和F )但同时只能一流出线起作 用
框中标明进行什么处理
框中标明判定条件并在 框外标明判定后的两种 结果的流向 表示从某一框到另一框 的流向 表示算法流向出口或入 口连接点
流线 连接圈
算法及算法的描述
解决问题的三个阶段
• 分析问题 • 寻找解决问题的途径 • 用计算机进行处理
算法的定义
算法是对解题方法的精确而完整的描述,即 解决问题的方法和步骤。
算法的特征
• 确定性:算法中的每一步必须是明确的,不可以有“多义性”
或“歧义性”。
• 有效性:算法中的每一步必须是计算机能够有效执行,并且能
Y
Y s←s+i
i←i+1
结束
例12:
t←0
i←2
i<=6
Y
i←i+2
t←t+1
N
结束
例13:
开始
s←0
i←1
s≠13?
N
输出s
Y s←s+i
i←i+1
结束
算法的三种模式
• 顺序结构 • 分支结构 • 循环结构
顺序结构
例1:请用流程图来表示“将大象放入冰箱”这一完整过 程。
开始
打开冰箱门 放入大象
关上冰箱门
结束
分支结构和循环结构
开始
开始
Y
执行a
条件?
Y
执行b
N
结束 结束
例8:
开始 输入变量n的值
s←0 i←1
i>1?
N
i是3的倍数?
一条流线
特点:用图形表示算法,直接形象,易于理解。
程序流程图
• 【例3】将例2用流程图来描述。
1、输入一个加数
2、输入另一个加数
3、计算两数之和 4、输出和
加数问题(程序实现)
• • • • • • • • • Private Sub Form_Load() Dim a as integer Dim b as integer Dim c as integer a=text1.text b =text2.text c=a+b text3.text=c End sub
• 有穷性:算法中的步骤应是有限的。
• 有零个或多个输入:所谓输入是指在执行算法时,需要从外
界获取必要的信息
• 有一个或多个输出:算法的目的是为了求解,“解”就是输
出
算法的表示
• 自然语言 有序地用简洁的语言加数学符号来描述。 • 流程图 用一些图框、流程线以及文字说明来表示算法。 • 计算机语言 计算机语言即用计算机编写的能被计算机 执行的程序。(程序设计语言如QBASIC、VB、PASCAL、 C、 C++、Java等。)
1、自然语言描述算法 【例1】交换两个杯子中的液体。
A
B
C
提问同学,如何处理? 将杯子A中的液体倒给杯子C; 将杯子B中的液体倒给杯子A; 将杯子C中的液体倒给杯子B。
引入一个空杯子
特点:通俗易懂,但文字冗长,容易出现歧义性
流程图
图形符号 符号名称 说明 流线 起始框:一流出线 终止框:一流入线 开始、结束框 表示算法的开始或结束
输入、输出框 框中标明输入、输出的 内容 处理框
判断框
只有一流入线和一流出线 只有一流入线和一流出线
一流入线两流出线(T和F )但同时只能一流出线起作 用
框中标明进行什么处理
框中标明判定条件并在 框外标明判定后的两种 结果的流向 表示从某一框到另一框 的流向 表示算法流向出口或入 口连接点
流线 连接圈
算法及算法的描述
解决问题的三个阶段
• 分析问题 • 寻找解决问题的途径 • 用计算机进行处理
算法的定义
算法是对解题方法的精确而完整的描述,即 解决问题的方法和步骤。
算法的特征
• 确定性:算法中的每一步必须是明确的,不可以有“多义性”
或“歧义性”。
• 有效性:算法中的每一步必须是计算机能够有效执行,并且能
Y
Y s←s+i
i←i+1
结束
例12:
t←0
i←2
i<=6
Y
i←i+2
t←t+1
N
结束
例13:
开始
s←0
i←1
s≠13?
N
输出s
Y s←s+i
i←i+1
结束
算法的三种模式
• 顺序结构 • 分支结构 • 循环结构
顺序结构
例1:请用流程图来表示“将大象放入冰箱”这一完整过 程。
开始
打开冰箱门 放入大象
关上冰箱门
结束
分支结构和循环结构
开始
开始
Y
执行a
条件?
Y
执行b
N
结束 结束
例8:
开始 输入变量n的值
s←0 i←1
i>1?
N
i是3的倍数?
一条流线
特点:用图形表示算法,直接形象,易于理解。
程序流程图
• 【例3】将例2用流程图来描述。
1、输入一个加数
2、输入另一个加数
3、计算两数之和 4、输出和
加数问题(程序实现)
• • • • • • • • • Private Sub Form_Load() Dim a as integer Dim b as integer Dim c as integer a=text1.text b =text2.text c=a+b text3.text=c End sub