1、第3讲 算法初步1有算法:S1输入n;S2判断n是否是2,若n2,则n满足条件;若n2,则执行S3;S3依次从2到n1检验能不能整除n,若不能整除,则n满足条件上述满足条件的数是_(提示:如填奇数、偶数、质数等)解析 根据以上算法结合质数定义知满足条件的数是质数答案 质数2(2018石家庄质检改编)执行如图所示的流程图,则输出i的值为_解析 当执行第一次循环体时,S1,i1;当执行第二次循环体时,S2,i2;当执行第三次循环体时,S6,i3;当执行第四次循环体时,S24,i4;此时输出i,即i4.答案 43运行如图所示的伪代码,输出的结果是_解析 a1,b2,把1与2的和赋给a,即a3,输出的
2、结果是3.答案 34(2018苏锡常镇四市联考)若下面所给的流程图运行结果为S35,那判断框中应填入的关于k的条件是_解析 当S35时,k6.要使输出S35,即当k6时结束程序,因此k6(或k7)答案 k6(或k7)5(2018南通调研)如图是一个算法流程图,则输出的x的值是_解析 因为xy150,所以x213,y231750,再次进入循环得:x23713,y21373350,此时输出x的值为59.答案 596如图所示的伪代码运行后,输出的值y为_x3If x3 ThenyxxElsey2xEnd IfPrint y解析 该伪代码反映的算法是一分段函数y因为x3,所以y6.答案 67执行如图所
3、示的流程图,如果输入的N100,则输出的x_解析 由流程图可知x.答案 8(2018南京模拟)执行如图所示的伪代码,输出的结果是_S1I3WhileS200SSIII2End WhilePrint I解析 该循环共执行4次,各次的S和I的值分别是3和5、15和7、105和9、945和11,故输出的I11.答案 119一个算法的流程图如图所示,若输入的值为2 017,则输出的i值为_解析 运行流程图x2 017,a2 017,i1,b,bx;i2,a,b,bx;i3,a,b2 017,bx.终止循环,故输出i3.答案 310下面的伪代码运行后输出的结果是_p1For k From1To 10St
4、ep3pp2k6EndForPrintp解析 p01,当k1时,p112163;当k4时,p2p124632461;当k7时,p3p227612767;当k10时,p4p321067210621.所以p21.答案 2111学校举行卡拉OK大赛,请了7名评委,这7名评委给选手甲评定的成绩为:84,79,84,93,84,86,87;下面的算法流程图用来编写程序统计每位选手的成绩,其中k表示评委人数,a表示选手的成绩(各评委所给有效分数的平均值)(1)请解释流程图中的“s1smaxmin”的含义;(2)请计算选手甲的成绩解 (1)流程图中的“s1smaxmin”的含义是:在计算每位选手的平均分数时
5、,为了避免个别评委所给的极端分数的影响,必须去掉一个最高分和一个最低分后再求平均分(2)选手甲的成绩为85.12已知数列an的各项均为正数,观察流程图,若k5,k10时,分别有S和S,求数列an的通项公式解 当i1时,a2a1d,M,S;当i2时,a3a2d,M,S;当i3时,a4a3d,M,S;因此,由流程图可知,数列an是等差数列,首项为a1,公差为d.当k5时,S,所以a1a611,即a1(a15d)11.当k10时,S,所以a1a1121,即a1(a110d)21.由解得a11,d2.所以ana1(n1)d2n1.1(2018无锡模拟)下面是求1的值的伪代码,在横线上应填的语句是_i1
6、S0While _SSii1EndWhilePrint S解析 确保最后一个加入的是,故i1 000或i1 001都正确答案 i1 000(或i1 001)2据如图所示的伪代码,可知输出的结果T为_解析 循环语句,计算功能,T135791149625.答案 6253某流程图如图所示,则该程序运行后输出的S的值为_解析 依题意得,运行程序后输出的是数列an的第2 017项,其中数列an满足:a11,an1注意到a2,a3,a4,a51,a6,该数列中的项以4为周期重复性地出现,且2 01745041,因此a2 017a11,运行程序后输出的S的值为1.答案 14图中x1,x2,x3为某次考试三个
7、评阅人对同一道题的独立评分,p为该题的最终得分当x16,x29,p8.5时,x3等于_解析 x16,x29,|x1x2|32不成立,即为“N”,所以再输入x3;由绝对值的意义(一个点到另一个点的距离)和不等式|x3x1|x3x2|知,点x3到点x1的距离小于点x3到点x2的距离,所以当x37.5时,|x3x1|7.5,不合题意;当x37.5时,|x3x1|7.5,符合题意,故x38.答案 85已知函数yf(x)设计一个求函数值的算法,并画出其流程图解 算法为:第一步输入x的值;第二步判断x与0的大小关系,如果x0,则f(x)x21,如果x0,则f(x)2x1;第三步输出函数f(x)的值流程图如
8、下:6某百货公司为了促销,采用购物打折的优惠办法:每位顾客一次购物,(1)不满1 000元无优惠;(2)满1 000元且不足2 000元者,按九五折优惠;(3)满2 000元且不足3 000元者,按九折优惠;(4)满3 000元且不足5 000元者,按八五折优惠;(5)满5 000元及以上者,按八折优惠试编写伪代码求优惠价解 设购物款数为x元,优惠价为y元,则优惠付款公式为y伪代码如下Read xIfx1 000 ThenyxElseIfx2 000Theny0.95xElseIfx3 000Theny0.9xElseIf x5 000Theny0.85xElsey0.8xEnd IfEnd IfEnd IfEnd IfPrint y10