内容正文:
专题3 算法与问题解决
2023
知识要点1 算法的概念与描述
1.定义
广义地讲,“算法”指的是解决问题或完成任务的一系列步骤。在计算机科学领域内,“算法”指的是用计算机解决问题的步骤,是为了解决问题而需要让计算机有序执行的、无歧义的、有限步骤的集合。
2.特征
①有穷性。算法的处理步骤必须是有限的。
②可行性。算法中的每一步都是可以执行的,并能在有限时间内完成。
③确定性。算法的每个步骤都具有确定的含义。
④0个或多个输入 ⑤1个或多个输出
3.三要素
知识要点1算法的概念与描述
处理框
(1)用自然语言描述算法(通俗易懂,容易出现歧义,比较繁琐)
(3)用伪代码描述算法。(简洁直观、符号接近计算机程序代码)
(2)用流程图描述算法。(结构清晰、寓意明确,分支增多时影响算法理解)
①输入变量flag的值。
②若flag的值为1,则设置指示灯为绿色,输出“空车位”;否则,设置指示灯为红色,输出“非空车位”。
(4)用计算机程序设计语言描述算法。
(程序设计语言有很多种,可以根据问题特点选择合适的语言来描述算法。)
4.算法的描述 (以停车场车位探测中某个时刻对车位进行数据处理的算法描述为例)
知识要点1算法的概念与描述
5.流程图
典型例题
1.下列关于算法的概念及描述,说法正确的是( )
A.算法的一个步骤可以被执行多次
B.算法必须包括一个或多个输入
C.算法就是数学运算方法
D.算法只能用自然语言进行描述
A
解析:选项B,算法可以有0个或多个输入,选项错误;选项C,“算法”指的是解决问题或完成任务的一系列步骤,选项错误;选项D,常见的算法描述方式有自然语言、流程图、伪代码、计算机程序设计语言等,选项错误。
典型例题
2.以下案例中,不属于算法的是( )
A.解方程2x-6=0的过程是移项后将x的系数化为1
B.从合肥到温哥华要先乘高铁到北京再转乘飞机
C.解方程3×2+2x-6=0
D.利用公式S=πr2计算半径为3 的圆的面积时,计算π×32
C
解析:算法为解决问题的具体步骤,C选项错误。
典型例题
3.某一算法的描述如下:
①输入一个正整数x。
②判断x能否被2整除,若能则输出偶数,否则输出奇数。
③结束。
该算法采用的描述方法是( )
A.计算机程序设计语言 B.流程图
C.伪代码 D.自然语言
D
解析 文字语言描述属于自然语言。
典型例题
4.(2022·湖州三贤高二)某算法用伪代码描述如下:
输入两个互不相等的正整数A和B
10: if A<B then
(C←A,A←B,B←C)
输出A和B
Else
返回到标号10的行继续执行
下列有关上述算法的说法,正确的是( )
A.该算法违反了算法有穷性原则 B.该算法实现了找出A和B中的最大值A
C.该算法属于分支结构 D.该算法无法使用流程图来描述
A
8
解析:该算法属于循环结构,可以用流程图表示,功能是如果A<B,则交换A、B中的数值,并输出,选项A正确。
单击此处编辑母版文本样式
知识要点2 算法的控制结构
项目 顺序结构 分支结构 循环结构
流
程
图
特
点 ①每个步骤按照算法中出现的顺序依次执行。
②每个步骤一定会被执行一次,而且只执行一次。 ①首先进行条件判断,根据条件满足与否来决定执行哪个分支。
②在一个分支结构中,必定有一个分支被执行,其他的分支则被忽略。 算法先判断循环条件是否满足,若满足则进入循环体,执行循环体,然后再次判断条件是否满足……直到某次循环条件不满足,退出循环。
范
例
知识要点3 用算法解决问题的过程
①抽象与建模
1.问题抽象:
提炼核心的要素并加以确定或假设。
2.建立模型:
用数学符号描述解决该问题的计算模型。
②设计算法
1.输入数据。
2.处理数据。
3.输出处理结果。
③描述算法
流程图
自然语言
伪代码
程序设计语言
典型例题
5.使用算法解决实际问题时,首先应该做的是( )
A.抽象与建模
B.设计算法
C.描述算法
D.编写程序
A
解析 算法解决问题的一般过程:抽象与建模→设计算法→描述算法,选项A正确。
典型例题
6.(2022·6月浙江选考)某算法的部分流程图如图所示,若输入n的值为17879,则输出s的值是( )
A.42 B