内容正文:
秘籍11 算法初步
1.某程序框图如图所示,该程序运行后输出K的值是( )
A.5 B.6
C.7 D.8
【答案】D
【解答】:当S=0时,满足执行循环的条件,执行循环体后S=1,K=2,
当S=1时,满足执行循环的条件,执行循环体后S=5,K=3,
当S=5时,满足执行循环的条件,执行循环体后S=13,K=4,
当S=13时,满足执行循环的条件,执行循环体后S=29,K=5,
当S=29时,满足执行循环的条件,执行循环体后S=61,K=6,
当S=61时,满足执行循环的条件,执行循环体后S=125,K=7,
当S=125时,满足执行循环的条件,执行循环体后S=253,K=8,
当S=253时,不满足执行循环的条件,
故输出的K值为8,
故选:D.
(1)在条件结构中,判断框是一个入口,两个出口,与顺序结构不同的是:它不依次操作指令,而是依据条件作出逻辑判断,选择执行两个指令中的一个,这里的“判断”主要判断“是”或“否”,即判断条件是否成立.
(2)判断框内的条件一定要清晰、明确,但条件的写法不唯一.有的人可能写成符合条件时执行A,不符合条件时执行B;也有的人可能写成不符合条件时执行A,符合条件时执行B,此时两个条件不一定一样.
(3)构成程序框图的图形符号及其功能:
图形符号
名称
功能
终端框(起止框)
表示一个算法的起始和结束
输入、输出框
表示一个算法输入和输出的信息
处理框(执行框)
赋值、计算
判断框
判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”
流程线
连接程序框
连接点
连接程序框图的两部分
2.执行如图的程序框图,若输入a=5,b=2,则输出的i=( )
A.3 B.4
C.5 D.6
【答案】A
【解答】:第一次执行循环体后,a=,b=4,满足继续循环的条件,i=1;
第二次执行循环体后,a=,b=8,满足继续循环的条件,i=2;
第三次执行循环体后,a=,b=16,满足继续循环的条件,i=3;
第四次执行循环体后,a=,b=32,不满足继续循环的条件,
故输出的i=3,
故选:A.
循环结构对应的程序框图:
直到型循环结构可以用程序框图表示为图①,
这个循环结构有如下特征:在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.
当型循环结构可以用程序框图表示为图②,
这个循环结构有如下特征:在每次执行循环体前,先对控制循环的条件进行判断,当条件满足时,执行循环体,否则终止循环.
1.秦九韶是我国南宋时期的数学家,普州(现四川省安岳县)人,他在所著的《数书九章》中提出的多项式求值的秦九韶算法,至今仍是比较先进的算法.如图的程序框图给出了利用秦九韶算法求某多项式值的一个实例,若输入的值为2,则输出的值为
A. B.
C. D.
【答案】C
【解析】根据题意,初始值,程序运行如下:
,
,
,
,
故选C.
【名师点睛】本题考查框图的循环结构,根据输入值求输出值,数列的错位相减求和,属于中档题.
秦九韶算法的算法步骤是:
第一步:输入多项式次数、最高次项的系数和的值.
第二步:将的值初始化为,将的值初始化为1.
第三步:输入次项的系数.
第四步:.
第五步:判断是否小于或等于,若是,则返回第三步;否则,输出多项式的值.
2.若六进制数1m05(6)(m为正整数)化为十进制数为293,则m= .
【答案】2
【解析】1m05(6)=1×63+m×62+5=221+36m=293,所以m=2.
1.将进制数转化为十进制数
计算进制数的右数第位数字与的乘积,再将其累加,这是一个重复操作的步骤.所以,可以用循环结构来构造算法,算法步骤如下:
第一步,输入和的值.
第二步,将的值初始化为0,的值初始化为1.
第三步,.
第四步,判断是否成立.若是,则执行第五步;否则,返回第三步.
第五步,输出的值.
2.将十进制数转化为进制数
第一步,给定十进制正整数a和转化后的数的基数.
第二步,求出a除以所得的商,余数.
第三步,把得到的余数依次从右到左排列.
第四步,若,则,返回第二步;否则,输出全部余数排列得到的进制数.
3.如图所示的程序框图所描述的算法称为欧几里得辗转相除法,若输入m=91,n=56,则输出m的值为( )
A.0 B.3 C.7 D.14
【答案】C
【解答】:若输入m=91,n=56,
第一次执行循环体后:r=35,m=56,n=35,不满足结束循环的条件;
第二次执行循环体后:r=21,m=35,n=21,不满足结束循环的条件;
第三次执行循环体后:r=14,m=21,n=14,不满足结束循环的条件;
第四次执行循环