第五章算法初步。
5.1算法思想与基本算法语句。
一、知识梳理。
1、关于算法思想的理解。
算法思想是指一些问题的解决常常需要设计出一系列可操作的步骤,只要按顺序执行这些步骤,都能完成任务,通常把这种解决问题的思想称为程序化思想或算法思想.
从算法到程序框图的设计,实质是将运算过程程序化,程序化思想的过程如下图1所示:
2、算法的三种基本逻辑结构的框图构成及各自的功能。
1)__结构,如图2所示,虚框内就是一个顺序结构.其中a和b两个框是顺序执行的,即执行完___框所指定的操作后接着执行___框所指定的操作.
2)__结构,如图3所示,此结构中包含一个判断框,根据给定的条件p是否成立而选择执行a框或 b 框.特别说明的是无论条件是否成立,只能执行a框或 b 框之一,不可能既执行a框又执行 b 框.无论走哪条路径,在执行完a或 b 之后,都经过 b 点,然后脱离此条件结构.a或 b 两个框可以有一个是空的,即不执行任何操作.(如图4)
3)__结构,它主要有两种类型:
___型循环,当条件___时就重复操作,当条件___时就退出循环.
如图5所示,其功能为:当给定条件p1成立时,执行a框操作,执行完a后,再判断条件p1是否成立,如果仍成立,再执行a框.如此反复,直到某一次条件不成立为止.此时不执行a框,而从 b 点脱离循环结构.
___型循环。
用于预先难以知道循环次数,当条件___时退出循环.
如图6所示,它的功能是先执行a框,然后判定条件p2是否成立,如果p2条件不成立,则再执行a,然后再对p2条件作判断,如果p2条件仍不成立,又执行a,如此反复执行a,直到条件p2成立为止,此时不再执行a,从 b 点脱离本循环结构.
3. 基本算法语句。
1).输入语句:格式。
注意事项:“提示内容”与变量之间用“;”隔开,“提示内容”之间用“,”隔开,各变量之间也用“,”隔开,最后一个变量后面不能加标点符号。
2).输出语句:格式。
输出语句的“提示内容”与表达式(或变量)之间必须用“;”隔开,“提示内容”之间用“,”隔开,各变量之间也用“,”隔开,最后一个变量后面不能加标点符号。
输出语句可以输出常量、变量的值、表达式的值以及系统信息。
3)、赋值语句:格式为它的作用一方面先计算赋值号右边表达式的值,另一方面把右边计算的结果值赋给赋值号左边的变量,使该变量的值等于表达式的值.
赋值号左边只能是变量名字,而不是表达式,例如3.6=x是错误的.
赋值号左右两边不能对换,赋值语句是将赋值号右边的表达式的值赋给赋值号左边的变量,例如 y=x,表示的是用x的值替代变量 y 原先的值,不能改写成x=y .因为后者表示用 y 的值替代变量x的值.
不能用赋值语句进行代数式(或符号)的运算(如化简,因式分解等).
赋值号与数学中的等号意义不同,4)、条件语句。
条件语句主要用来实现算法中的条件结构,在算法的条件结构中,当出现3个或3个以上的判断点时,就要用到程序嵌套,用条件语句表达时,先按条件要求执行某一语句(特别是 else 后的语句2),继续按另一条件进行判断,这时可再利用一条件语句完成这一要求,这就形成了条件语句的嵌套,其一般格式为:
其实质是将第一层的条件语句1和语句2再设计为一个条件语句.
5)、循环语句。
循环语句有语句与语句。
它们的区别在于:当型循环语句先对一些条件进行判断,根据判断的结果决定是否执行循环体,因此又称“前测试型”循环;直到型循环语句则是先执行一次循环体,再对一些条件进行判断,然后根据判断的结果决定是否继续执行循环体,因此又称“后测试型”循环,也就是说直到型循环语句至少执行一次循环体,而当型循环语句则可能一次也不执行循环体.但二者本质上是相同的,可以互相转化.
二、例题解析。
题型一条件语句和循环语句。
例1】阅读右面的程序框图,运行相应的程序,输出的结果为。
a. b.c. d.
题型二算法语句的实际应用。
例2】根据右侧程序框图,完成下面问题:
1)写出输出的函数表达式;
2)求的值;
3)解方程。
例3】某程序框图如图所示,该程序运行后输出的值分别为 .
三、巩固练习。
1.下列给出的赋值语句中正确的是( )
a.3=a b. m=-m c. b=a=2 d.
2.程序: input a
a←a*2a←a*3
a←a*4a←a*5
print a
end若输入的是2,则输出的值是( )
a.16b.120c.240 d.360
3.将两个数a=25,b=9交换,使a=9,b=25,下面语句正确一组是。
abcd4.下列程序运行后,a,b,c的值各等于什么?
1)a=32)a=3
b=-5b=-5
c=8c=8
a=ba=b
b=cb=c
print a,b,cc=a
endprint a,b,c
end5已知如图程序,若输入8,则程序执行后输出的结果是。
6. 下列程序执行后输出的结果是( )
a. –1 b. 0 c. 1 d. 2
7.以下程序运行后的输出结果为( )
a. 17b. 19c. 21d.23
8.已知有下面程序,如果程序执行后输出的结果是11880,那么在程序的“条件”应为( )
a、i > 9 b、i >=9 c、i <=8 d、i < 8
9..写出下列程序运行的结果。
1)a=22)x=100
i=1i=1
while i<=6do
a=a+1x=x+10
print i,aprint i,x
i=i+1i=i+1
wendloop until x=200
endend
5.2算法案例。
一、知识梳理。
1、辗转相除法。
算法:求两个数的最大公约数,首先用除以求得商和余数。再用除以余数,求得商和余数,以此类推,直到余数为0时,最后的除数即为原来两个数的最大公约数。
2、更相减损术 :任给的两个正整数数(若是偶数,先用2约数),以较大的数减较小的数,接着把所得的差与较小的数比较,并以大数减小数,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数。
3、秦九韶算法。
把一个n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0改写成如下形式:
f(x求多项式的值时,首先计算最内层括号内一次多项式的值,即然后由内向外逐层计算一次多项式的值,即。
k=1,2,…n)
这种求f(x)的值的方法叫做秦九韶算法。
4.进位制。
进位制是一种记数方式,所以也称进位记数法,是由于计数目的增大而产生的。逢n进一称为n进位制,例如逢十进一称为十进位制。
5.进位制之间的转化。
二、例题解析。
题型一求最大公约数。
例1】求三个数168,56,264的最大公约数。
题型二秦九韶算法的应用。
例2】用秦九韶算法计算多项式,当时的值.
题型三进位制数之间的转化。
例3】将五进制数434转化为二进制数。
三、巩固练习。
1.三个数72,120,168的最大公约数是。
2.用秦九韶算法计算多项式当时的值时,需要做乘法和加法的次数分别是( )
a.6,6 b. 5, 6c. 5, 5 d. 6, 5
3.用秦九韶算法计算多项式当时的值为。
4.数的不同进位制的转换。
1)将二进制数化为十进制数;(2)将八进制数3456(8)化为十进制数;
3)将十六进制数ab12(16)化成十进制数;(4)将十进制数256转化为二进制的数;
“算法初步”教学案例
海南中学王涵。1.1算法与程序框图。1.1.1 算法的概念和特征。1 教学目标 知识目标 通过分析具体问题的过程与步骤,初步体会算法的思想 了解算法的含义,能用自然语言描述解决具体问题的算法。使学生体会算法的基本特征 有穷性 确定性 有效性 顺序性 不唯一性 普遍性 普适性 能力目标 逐步发展学生有...
算法初步与框图
一 选择题 本大题共12小题,每小题5分,共60分 1 算法共有三种逻辑结构,即顺序结构,条件结构和循环结构,下列说法正确的是 a 一个算法必定含有条件结构。b 一个算法必定含有循环结构。c 一个算法必定含有上述三种结构。d 一个算法可以是顺序结构和其他两个结构的有机组合。解析 一个算法必定含有顺序...
复数与算法初步
江苏省12市2015届高三上学期期末考试数学试题分类汇编。一 复数。1 常州市2015届高三 设复数 i为虚数单位 若,则的值为 2 连云港 徐州 淮安 宿迁四市2015届高三 设复数满足 是虚数单位 则的虚部为 3 南京市 盐城市2015届高三 若复数 其中为虚数单位 的实部与虚部相等,则实数 4...