论文部分内容阅读
算法的基本思想就是探求解决问题的一般性方法,并将解决问题的步骤用具体化、程序化的语言加以表述.在算法的学习过程中要求了解算法的含义;理解流程图(也称程序框图)的三种基本逻辑结构:顺序结构、选择结构、循环结构;理解用伪代码表示的几种基本算法语句:赋值语句、输入语句、输出语句、条件语句、循环语句.作为新课标新增加的内容,算法尤其是流程图在高考中常常出现,但往往是容易题,并且以填空题的形式出现.
一、流程图
从试题的形式来看,主要包括要求写出流程图所表示的算法、根据流程图写出运算结果、阅读流程图并补上关键语句等.
例1 (2009年上海卷理)某算法的程序框图如右图所示,则输出量y与输入量x满足的关系式是 .
【解析】当x>1时,有y=x-2,当x≤1时,有y=2x,所以有分段函数y=2x(x≤1)x-2(x>1) .
【评注】流程图中的选择结构是根据条件做出判断,再决定执行哪一种操作的结构,这与分段函数的形式十分吻合,选择结构体现了分类讨论的数学思想.解决这类问题只要仔细阅读流程图,理解其判断条件和运算过程即可.
例2 (2009浙江卷理改编)某程序框图如图所示,该程序运行后输出的k的值是 .
(注:框图中的赋值符号“=”也可以写成“←”,下同)
【解析】∵k=0,s=0<100,∴s=0+1=1,k=1;∵s=1<100,∴s=1+2=3,k=2;∵s=3<100,∴s=3+8=11,k=3;∵s=11<100,∴s=3+8+211,k=4,而s=3+8+211>100,不符合条件,所以输出的k=4.
【评注】此题考查了流程图中的选择结构和循环结构,解题过程需要作出四次判断和三次循环运算,体现了逻辑思维能力和探索能力.此类问题要求写出运算结果,我们只要按照判断的条件和循环运算的法则将初始值一一代入,逐步运算,直至找到结果或发现规律.
例3 (镇江市2008届高三第三次调研试题)如图给出的是计算12+14+16+…+120的值的一个程序框图,其中判断框内应填入的条件是 .
【解析】这里的i起到了计数器的作用,菱形框中所填的条件应起到控制运算次数的作用,由于s的初始值
是0,为了得到12+14+16+•••+120的值,我们要对s进行10次加法运算,注意到只有当满足条件时才能跳出循环,所以答案可以是“i>10”或“i≥11”.
【评注】在循环结构中,运算的次数的判断十分关键,只有对整个程序有了全面准确的理解,才有可能正确判断运算次数,因此这类问题在考试中常常出现,值得引起大家的重视.
二、伪代码
在伪代码涉及的问题中,除了理解赋值语句,输入、输出语句,条件语句外,重点应关注循环语句中的当型语句“While … End While”和“For 循环”.
例4 根据如图所示的伪代码,可知输出的结果b为 .
a←1
b←1
While b<5
c←a+b
a←b
b←c
End While
Print b
【解析】执行第一次循环后得到:b=1<5,c=2,a=1,b=2;
执行第二次循环后得到:b=2<5,c=3,a=2,b=3;
执行第三次循环后得到:b=3<5,c=5,a=3,b=5;
执行第四次循环后得到:b=5≥5,b=5.
【评注】当型语句的特点是先判断,后执行.解决此类问题的关键是读懂伪代码,注意循环条件,防止循环体运算不彻底.
例5 执行如图所示的伪代码,输出的结果是 .
S← 0
ForIFrom1to9Step 2
S←S + I
EndFor
PrintS
【解析】本题循环的次数确定,步长为2,实质上进行的运算是0+1+3+5+7+9,因此输出的结果是25.
【评注】For 循环的运算规律比较清楚,但应注意运算的步长,若将本题中的“Step 2”去掉,则默认为“Step 1”,运算将变成0+1+2+3+4+5+6+7+8+9,结果为45.
练习:
示:
下图是统计该6名队员在最近三场比赛中投进的三分球总数的程序框图,则图中判断框应填 ,输出的s=
输出的结果是 .
3.下边是根据所输入的x值计算y值的一个算法程序,若x依次取数列n100-1 (n∈N*)中的前200项,则所得y值中的最小值为 .
Read x
If x>0Then
y←1+x
Else
y←1-x
End If
Print y
练习答案
1.i≤6,a1+a2+…+a6
2. 10
3. 1
一、流程图
从试题的形式来看,主要包括要求写出流程图所表示的算法、根据流程图写出运算结果、阅读流程图并补上关键语句等.
例1 (2009年上海卷理)某算法的程序框图如右图所示,则输出量y与输入量x满足的关系式是 .
【解析】当x>1时,有y=x-2,当x≤1时,有y=2x,所以有分段函数y=2x(x≤1)x-2(x>1) .
【评注】流程图中的选择结构是根据条件做出判断,再决定执行哪一种操作的结构,这与分段函数的形式十分吻合,选择结构体现了分类讨论的数学思想.解决这类问题只要仔细阅读流程图,理解其判断条件和运算过程即可.
例2 (2009浙江卷理改编)某程序框图如图所示,该程序运行后输出的k的值是 .
(注:框图中的赋值符号“=”也可以写成“←”,下同)
【解析】∵k=0,s=0<100,∴s=0+1=1,k=1;∵s=1<100,∴s=1+2=3,k=2;∵s=3<100,∴s=3+8=11,k=3;∵s=11<100,∴s=3+8+211,k=4,而s=3+8+211>100,不符合条件,所以输出的k=4.
【评注】此题考查了流程图中的选择结构和循环结构,解题过程需要作出四次判断和三次循环运算,体现了逻辑思维能力和探索能力.此类问题要求写出运算结果,我们只要按照判断的条件和循环运算的法则将初始值一一代入,逐步运算,直至找到结果或发现规律.
例3 (镇江市2008届高三第三次调研试题)如图给出的是计算12+14+16+…+120的值的一个程序框图,其中判断框内应填入的条件是 .
【解析】这里的i起到了计数器的作用,菱形框中所填的条件应起到控制运算次数的作用,由于s的初始值
是0,为了得到12+14+16+•••+120的值,我们要对s进行10次加法运算,注意到只有当满足条件时才能跳出循环,所以答案可以是“i>10”或“i≥11”.
【评注】在循环结构中,运算的次数的判断十分关键,只有对整个程序有了全面准确的理解,才有可能正确判断运算次数,因此这类问题在考试中常常出现,值得引起大家的重视.
二、伪代码
在伪代码涉及的问题中,除了理解赋值语句,输入、输出语句,条件语句外,重点应关注循环语句中的当型语句“While … End While”和“For 循环”.
例4 根据如图所示的伪代码,可知输出的结果b为 .
a←1
b←1
While b<5
c←a+b
a←b
b←c
End While
Print b
【解析】执行第一次循环后得到:b=1<5,c=2,a=1,b=2;
执行第二次循环后得到:b=2<5,c=3,a=2,b=3;
执行第三次循环后得到:b=3<5,c=5,a=3,b=5;
执行第四次循环后得到:b=5≥5,b=5.
【评注】当型语句的特点是先判断,后执行.解决此类问题的关键是读懂伪代码,注意循环条件,防止循环体运算不彻底.
例5 执行如图所示的伪代码,输出的结果是 .
S← 0
ForIFrom1to9Step 2
S←S + I
EndFor
PrintS
【解析】本题循环的次数确定,步长为2,实质上进行的运算是0+1+3+5+7+9,因此输出的结果是25.
【评注】For 循环的运算规律比较清楚,但应注意运算的步长,若将本题中的“Step 2”去掉,则默认为“Step 1”,运算将变成0+1+2+3+4+5+6+7+8+9,结果为45.
练习:
示:
下图是统计该6名队员在最近三场比赛中投进的三分球总数的程序框图,则图中判断框应填 ,输出的s=
输出的结果是 .
3.下边是根据所输入的x值计算y值的一个算法程序,若x依次取数列n100-1 (n∈N*)中的前200项,则所得y值中的最小值为 .
Read x
If x>0Then
y←1+x
Else
y←1-x
End If
Print y
练习答案
1.i≤6,a1+a2+…+a6
2. 10
3. 1