1、专题七十 基本算法语句【热点题型】题型一 输入、输出和赋值语句例1、某工种按工时计算工资,每月总工资每月劳动时间(小时)每小时工资,从总工资中扣除10%作公积金,剩余的为应发工资,当输入劳动时间和每小时工资数,试编写一程序输出应发工资 程序框图如图: 程序: 【提分秘籍】输入语句,输出语句,赋值语句是任何一个算法中必不可少的语句,在赋值语句中,变量的值始终等于最近一次赋给它的值,先前的值将被替换,要注意这一特点,“”是一个赋值号,左边只能是变量,不能是常数或表达式,变量赋值后其原来的值被改变,初始值不被记忆 赋值语句在使用时易出现格式不符合要求的错误,应注意以下三点: (1)赋值号左边只能是变
2、量而不是表达式; (2)赋值号两边不能对换; (3)不能利用赋值语句进行代数式计算 【热点题型】题型二 条件语句例2、到银行办理个人异地汇款(不超过100万)时,银行要收取一定的手续费汇款额不超过100元,收取1元手续费;超过100元但不超过5000元,按汇款额的1%收取手续费; 超过5000元但不超过100万元,一律收取50元手续费试用条件语句描述当汇款额为x元时,银行收取的手续费y元的过程,画出程序框图并写出程序 程序: 【提分秘籍】 (1)条件语句一般用在需要对条件进行判断的算法设计中,求分段函数的函数值往往用条件语句编写程序 (2)条件语句常用运算符:“”(大于)、“”(大于或等于)、
3、“”(小于或等于)、“”(不等于) (3)要区别好条件语句的两种格式:IFTHENELSE格式和IFTHEN格式,理解它们的区别与联系,以及在实际编写程序中各自的特点 (4)条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题要用到条件语句 【热点题型】题型三 循环语句例3、编写一个程序计算1232529992,并画出相应的程序框图 程序框图为: 【提分秘籍】 循环语句主要用来实现算法中的循环结构在处理一些需要反复执行的运算任务时,如累加求和,累乘求积等问题中常常用循环语句来编写程序 解决累加求和问题,自然想到用循环语句设计算法其中注意累加变量S和计数变量
4、i初值的设定和作 用算法的设计带有灵活性和通用性,熟练地掌握这一类题的解法,对于解决与此相关的问题有很大帮助 【方法技巧】1循环语句有两种格式:WHILE循环和UNTIL循环,WHILE循环语句尤其适合于解决一些事先不确定循环次数的问题,WHILE循环语句中的表达式的结果为真时,执行循环体,为假时跳出循环体 2实际问题的编程设计一般是先对问题进行认真分析,设计出合理的算法,然后将算法用程序框图表示出来,最后根据程序框图利用算法语句写出程序 【误区警示】1要区分条件语句的两种格式:IFTHENELSE格式和IFTHEN格式 2循环语句有“直到型”与“当型”两种,要区别两者的异同,主要解决遇到需要
5、反复执行的任务时,用循环语句编写程序 【随堂巩固】 1下列赋值语句正确的是()Aab2B5aCab4 Daa2解析:选D.根据赋值语句的格式要求知,A、B、C均不正确,只有D正确,故选D. 2当a3时,下面的程序段输出的结果是()A9 B3C10 D6解析:选D.根据条件310,故y236.3给出程序如下图所示,若该程序执行的结果是3,则输入的x值是()A3 B3C3或3 D0解析:选C.该算法对应的函数为y|x|,已知y3,则x3.4下面方框中为一个求20个数的平均数的程序,在横线上应填充的语句为()Ai20 Bi20 Di20解析:选D.由于是求20个数的平均数,直到i20时退出循环5下边
6、的程序语句输出的结果S为()A17 B19C21 D23解析:选A.i从1开始,依次取3,5,7,9,当i8时,循环继续进行,故当i9时,跳出循环,故输出S27317.6给出一个算法:. 7为了在运行下面的程序之后得到输出y16,键盘输入x应该是_解析:由程序可得:当x0时y(x1)2.若y16,则(x1)216.x14.x5或3(舍去),x5. 8下列程序执行后输出的结果是_ 9下列程序的功能是:判断任意输入的数x是否是正数,若是,输出它的平方值;若不是,输出它的相反数则填入的条件应该是_解析:因为条件满足则执行yx,条件不满足则执行yx*x,由程序功能知条件应为x0.答案:x010已知分段
7、函数y,编写程序,输入自变量x的值,输出其相应的函数值,并画出程序框图解:程序框图如图:程序如下(BASIC语言):I 11国庆期间,某超市对顾客实行购物优惠活动,规定一次购物付款总额:若不超过200元,则不予优惠;若超过200元,但不超过500元,则按标价价格给予9折优惠;如果超过500元,500元的部分按第条优惠,超过500元的部分给予7折优惠,试编写一个收款程序第四步,计算y0.95000.7(x500),并输出y.程序框图如图:程序如下:12已知数列an的各项均为正数,观察程序框图,若k5,k10时,分别有S和S.(1)试求数列an的通项;(2)令bn2an,求b1b2bm的值故ana1(n1)d2n1.(2)由 (1)可得:bn2an22n1,b1b2bm212322m1(4m1)