(共28张PPT)
第10章
算法初步
复习课件
题型探究
知识梳理
内容索引
当堂训练
知识梳理
1.算法的概念
算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或看成按要求设计好的
、
计算序列,并且这样的步骤或序列能够解决_________
2.程序框图
算法框图由
组成,
按照
用
将框图连接起来。结构可分为
结构、
结构和
结构。
有限的
确切的
一类问题。
框图
算法进行的顺序
流程线
顺序
选择
循环
3.计算机算法语句
基本算法语句有
语句、
语句、
语句、
语句、
语句五种,它们对应于算法的三种逻辑结构:顺序结构、选择结构、循环结构。用基本语句编写程序时要注意各种语句的
,条件语句应注意If与
配套使用,缺一不可,而
可选;循环语句应注意
的准确表达以及
的步长设置。
输入
输出
赋值
条件
循环
格式要求
Then、End
If
Else
循环条件
循环变量
题型探究
例1 已知平面直角坐标系中两点A(-1,0),B(3,2),写出求线段AB的垂直平分线方程的一个算法。
类型一 算法设计
解答
第四步,由点斜式方程得直线AB的垂直平分线的方程,并输出。
算法设计应注意:
(1)与解决问题的一般方法有联系,从中提炼出算法;
(2)将解决问题的过程分为若干个可执行步骤;
(3)引入有关的参数或变量对算法步骤加以表达;
(4)用最简练的语言将各个步骤表达出来;
(5)算法的执行要在有限步内完成。
反思与感悟
跟踪训练1 某工厂2014年生产小轿车200万辆,技术革新后预计每年的生产数量比上一年增加5%,问最早哪一年该厂生产的小轿车数量超过300万辆?写出解决该问题的一个算法。
解答
算法如下:
第一步,令n=1,a=200,r=0。05。
第二步,T=ar(计算年增量)。
第三步,a=a+T(计算年产量)。
第四步,如果a≤300,那么n=n+1,
返回第二步;否则执行第五步。
第五步,N=2
014+n。
第六步,输出N。
类型二 算法框图及设计
例2 给出以下10个数:5,9,80,43,95,73,28,17,60,36。要求把大于40的数找出来并输出。试画出该问题的算法框图。
解答
算法框图如下:
算法的设计是画算法框图的基础,我们通过对问题的分析,写出相应的算法步骤。画算法框图之前应先对算法问题设计的合法性和合理性进行探讨,然后分析算法的逻辑结构和各步骤的功能(输入、输出、判断、赋值和计算),画出相应的算法框图。
反思与感悟
跟踪训练2 阅读如图所示的算法框图,运行相应的程序,如果输入某个正整数n后,输出的s∈(10,20),
那么n的值为
A.3
B.4
C.5
D.6
答案
解析
逐项验证。若n=3,输出s=7?(10,20)。
若n=4,输出s=15∈(10,20),选B。
例3 给出30个数:1,2,4,7,…,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推,要计算第30个数的大小,现在已给出了该问题算法的算法框图(如图)。
(1)请在图中判断框①处和执行框②处填上合适的语句,使之能完成该题算法功能;
类型三 算法语句的设计
解答
①i≥30 ②P=P+i
(2)根据算法框图写出算法语句。
解答
算法语句如下:
P=1
i=1
Do
P=P+i
i=i+1
Loop
While
i<30
输出
P。
用基本语句编写程序时要注意各种语句的格式要求,特别是条件语句和循环语句,应注意这两类语句中条件的表达以及循环语句中有关变量的取值范围。
反思与感悟
跟踪训练3 某人用分期付款的方式购买一台价格为1150元的冰箱,如果购买时先付150元,以后每月付50元,并加入上次余款利息,一个月后付第一个月的分期付款,若月利率为1%,购买冰箱的钱全部付清后,实际付出的款额是多少元?请编写一个算法语句解决这个问题。
解答
购买时付款150元,余款1
000元,分20次分期付款,并且每次要加上余款的利息,可以看出每次付款数是这样一列数:ai=50+(21-i)×50×1%(i=1,2,…20)。
m=1
000
S=0
i=1
Do
k=50+m
1%
S=S+k
m=1
000-50
i
i=i+1
LooP
While
i<=20
S=S+150
输出S。
当堂训练
1.二分法作为一个优秀算法,有下列说法
①适用于求所有函数的零点;
②一定能在有限步内达到要求的精确度;
③每一步的指令都十分明确,只需按指令机械执行;
④能很方便地移植到计算机上执行,代替人完成枯燥的、重复的、烦琐的工作。
其中正确的说法有
A.①②③
B.①②④
C.①③④
D.②③④
答案
√
2
3
4
5
1
二分法只适合求零点左右两侧函数值异号的零点,虽能解决一类问题,但不适合所有函数求零点。
解析
2.根据如图所示的算法框图,要使得输出的结果在区间[-1,0]上,则输入的x可以是
A.2
B.3
C.5
D.6
2
3
4
5
1
答案
√
解析
3.若算法框图所给的运行结果为S=20,那么判断框中应填入的关于k的条件是
A.k=9
B.k≤8
C.k<8
D.k>8
2
3
4
5
1
答案
解析
√
据算法框图可得当k=9时,S=11;
k=8时,S=11+9=20。∴应填入“k>8”。
4.计算机执行下面的程序段后,输出的结果是
A.1,3
B.4,1
C.0,0
D.6,0
2
3
4
5
1
a=1
b=3
a=a+b
b=a-b
输出
a,b
答案
解析
√
由语句知a=1+3=4,b=4-3=1。
2
3
4
5
1
5.将下面的语句改编成Do
Loop语句。
解答
S=0
For i=1 To 1
000
S=S+i
Next
输出S。
i=1
S=0
Do
S=S+i
i=i+1
Loop While i<=1
000
输出S。
1.算法往往是把问题的解法划分为若干个可执行的步骤,有些步骤甚至重复多次,但最终都必须在有限个步骤之内完成。
2.对算法框图的考查之一是程序的运行结果;考查之二是补全算法框图中的条件或循环体等。
3.算法设计和算法框图是程序设计的基础,编写程序的基本方法是“自上而下,逐步求精”。
规律与方法
谢
谢