- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第三章
算法基础
算法基础
3.1体验计算机解决问题的过程
3.3计算机程序与程序设计语言
3.1.1人工解决问题的过程
3.1.2计算机解决问题的过程
3.3.1计算机程序
3.3.2计算机程序设计语言
3.2算法及其描述
3.2.1算法
3.2.2算法的描述
本章目标
数据与信息学习目标
01
计算机解决问题的过程
人工解决问题的过程
计算机解决问题的过程
02
算法及其描述
算法
算法的描述
03
计算机程序与程序设计语言
计算机程序
计算机程序设计语言
第二节算法及其描述
算法的定义
算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。
通俗地说,是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。
探究活动
若要求方程6x+5y+4z=50的正整数解的个数t。解决问题的算法步骤:
1、t=0;
2、x=1;
3、y=1;
4、z=1;
5、如果满足式子6x+5y+4z=50,则解的个数加1(即t=t+1);
6、z=z+1;
7、如果z=12则转步骤5,否则步骤8;
8、y=y+1;
9、如果y=10则转步骤4,否则步骤10;
10、x=x+1;
11、如果x=8则转步骤3,否则步骤12;
12、结束。
表示右边式子的赋值给左边的式子
算法的定义
算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则。
通俗地说,是用计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。
描述算法的常用方法有自然语言描述算法、流程图描述算法和伪代码描述算法。
算法的特征(5个)
①有穷性执行有穷步之后结束,计算步骤是有限的
②确定性执行的每一步骤都必须有确切的定义
③数据输入0个或多个数据输入
④数据输出1个或多个数据输出
⑤可行性基本可执行步骤的集合,有限时间内完成。
注意与数据、信息的特征区分开来!
可以没有输入,但至少有一个输出。
自然语言描述算法
使用日常交流所用语言来描述算法(如汉语、英语等)
例:如果ab,则把a的值赋值给max。
流程图描述算法
伪代码描述算法
使用程序框图来描述算法
介于自然语言与计算机语言之间的文字与符号。不使用图形符号,书写方便,易于理解。
例:
ifa的值大于b的值
max=a
Max=b
Max=a
开始
结束
ab?
输入a、b
输出Max
Y
N
流程图规范
伪代码求解方程
算法描述的方法
优势
不足
自然语言描述法
通俗易懂,不必专门训练
难以清晰表示深层次结构
歧义易导致算法的不确定性
描述语言过长,不便翻译成计算机语言
流程图描述法
流程清晰、简洁
不依赖计算机与计算机语言,独立
书写不便,修改不易
伪代码描述法
书写方便,格式紧凑,易于理解
种类繁多,不规范,易误读
三种算法描述方法的比较
实践:画出辗转相除法求两个正整数的最大公约数的流程图
设给定两个正整数为m和n,求它们的最大公约数。
1、以m除以n,令所得的余数为R。
2、若R=0,则输出结果n,算法结束;否则,继续步骤3
3、令m=n,n=R,并返回步骤1
m=n,n=R
开始
结束
R=0?
输入m、n
输出n
Y
N
R=mmodn
三种基本控制结构
任何复杂的算法都可以用这三种基本控制结构组合。
三种基本控制结构的作用
①顺序结构表示程序中的各步操作按出现的先后顺序执行。
②选择结构表示程序的处理步骤出现了分支,需要根据某一特定的条件选择其中的一个分支执行。(单选择、双选择、多选择)
③循环结构表示程序反复执行某个或某些操作,直到判断条件为假(或为真)时,才可终止循环。
文档评论(0)