1、1.2基本算法语句,1.2.1输入语句 输出语句 赋值语句,输入语句 输出语句 赋值语句 条件语句 循环语句,温故而知新,1. 什么是算法?什么是程序框图?,2. 算法的基本逻辑结构有哪些?,算法通常是指按照一定规则解决某一类问题的明确的和有限的步骤。 程序框图是一种用程序框、流程线及文字说明来表示算法的图形。,算法的基本结构有三种:顺序结构、条件结构、循环结构,其中循环结构又分为当型结构和直到型结构两种。,1. 算法的描述方法有哪些?,自然语言、程序框图和程序语言。,2. 基本的算法语句有哪些?,阅读P21思考:,基本的算法语句有:输入语句、输出语句、赋值语句、条件语句、循环语句。,INPU
2、T “x=”;xy=x3+3*x224*x+20PRINT yEND,程序:,输入语句赋值语句输出语句,基本算法语句,一、输入语句,1、一般格式:,INPUT “提示内容”;变量,变量是指程序在运行时其值是可以变化的量。,输入语句要求输入的值只能是具体的常数。,2、说明:,“提示内容”提示用户输入什么样的信息。,提示内容与变量之间用“;”隔开,变量与变量之间用“,”隔开。 “提示内容”和它后面的“;”可以省略。,无计算功能,用户由键盘输入的数据必须是常量,输入多个数据时用“,”分隔,且个数要与变量的个数相同。,基本算法语句,二、输出语句,1、一般格式:,PRINT “提示内容”;表达式,2、说
3、明:,作用是实现算法的输出结果功能,计算。,“提示内容”提示用户输出什么样的信息。,表达式是指程序要输出的数据。,输出语句可以输出常量、变量或表达式的值及字符。,一个语句可以输入多个表达式,不同的表达式之间可用“,”分隔。,有计算功能,能直接输出计算公式的值。,基本算法语句,三、赋值语句,1、一般格式:,变量=表达式,2、说明:,作用是将表达式所代表的值赋给变量,计算。,赋值语句中的“=”称为赋值号。,赋值语句右边必须是一个数据、常量和算式,左边必须是变量,不能为表达式。,赋值号左右不能对换。,不能用赋值号进行代数式的演算。,一个语句只能给一个变量赋值;,将一个变量的值赋给另一个变量,前一个变
4、量的值保持不变;可先后给一个变量赋多个不同的值,但变量的取值总是最近被赋予的值。,数学符号与程序符号的对比,例2 编写程序,计算一个学生数学、语文、英语三科的平均成绩。,INPUT “Maths=”;aINPUT “Chinese=”;bINPUT “Englsih=”;cPRINT “The average=”;(a+b+c)/3END,练习,1、判断下列赋值语句是否正确 (1) 4m (2) x+y=10 (3) A=B=2 (4) N=2*N,2、写出下列语句描述的算法的输出结果,a=5 b=3 c=(a+b)/2 d=c*c print d,a=1 b=2 c=a+b b=a+c-b
5、print a,b,c,a=10 b=20 c=30 a=b b=c c=a print a,b,c,d= 16,a=1,b=2,c=3,a=20,b=30,c=20,(5)INPUT “A,B=”;A,B B=A+B A=B-A B=B-A PRINT “A,B=”;A,B END(运行时从键盘输入3,7),(4)A=-1000 A=A+100 PRINT “A=”;A END,将一个变量的值赋给另一个变量,前一个变量的值保持不变;可先后给一个变量赋多个不同的值,但变量的取值总是最近被赋予的值 。,A=900,A,B =7 3,3、写出求1+2+3+4+5+6+7+8n的一个程序算法,inp
6、ut “n=”;ns=n*(n+1)/2print send,4、根据下列程序,画出程序框图,input x,yprint x/2,3*yx=x+1y=y-1print x,yend,小结,1、输入语句、输出语句和赋值语句的功能与表示方法,2、能够设计程序,并准确运用输入语句、输出语句和赋值语句,3、注意书写的规范性。,1.2基本算法语句,1.2.2条件语句,输入语句 输出语句 赋值语句 条件语句 循环语句,条件语句,IF-THEN格式:,IF 条件 THEN 语句体END IF,说明:“条件”表示判断的条件,“语句”表示满足条件时执行的操作内容;条件不满足时,结束程序,END IF表示条件语
7、句的结束。,IF-THEN-ELSE格式:,IF 条件 THEN 语句 1ELSE 语句 2 END IF,说明:在条件语句的一般格式中,“条件”表示判断的条件;“语句 1”表示满足条件时执行的操作内容;“语句 2”表示不满足条件时执行的操作的内容;END IF表示条件语句的结束。,满足条件?,语句 1,语句 2,是,否,条件语句,例1、编写程序,输入一个x的值,要求输出它的绝对值。,input xif x=0 then print xelse print -xend ifend,例2、编写程序,输入一个x的值,如果它是正数,则输出它,否则不输出。,input xif x0 then prin
8、t xend ifend,例3、根据下面的程序框图编写程序。,开始,输入a,b,c,ba?,ca?,cb?,输出a,b,c,结束,t=a,a=b,b=t,t=a,a=c,c=t,c=t,b=c,t=b,Y,N,Y,N,N,Y,INPUT “a,b,c=”;a,b,cIF ba THEN t=a a=b b=tEND IFIF ca THEN t=a a=c c=tEND IFIF cb THEN t=b b=c c=tEND IFPRINT a,b,cEND,程序:,例4、把下面的程序框图转化为程序。,开始,0?,=0?,结束,输出p,原方程无实数根,N,Y,Y,N,输入a,b,c,练习某百货
9、公司为了促销,采用购物打折的优惠办法:每位顾客一次购物在1000元以上者,按九五折优惠;在2000元以上者,按九折优惠; 在3000元以上者,按八五折优惠; 在5000元以上者,按八折优惠。编写程序求优惠价。,条件语句练习课,IF-THEN格式:,IF 条件 THEN 语句体END IF,IF-THEN-ELSE格式:,IF 条件 THEN 语句 1ELSE 语句 2 END IF,条件语句一般格式,练习某百货公司为了促销,采用购物打折的优惠办法:每位顾客一次购物在1000元以上者,按九五折优惠;在2000元以上者,按九折优惠; 在3000元以上者,按八五折优惠; 在5000元以上者,按八折优
10、惠。编写程序求优惠价。,条件语句的嵌套,IF 条件1 THEN 语句 1ELSE IF 条件2 THEN 语句 2 ELSE 语句3 END IFEND IF,例1 某商场举办优惠促销活动,若购物金额在800元以上(不含800元)打7折;若购物金额在400元以上(不含400元)800元以下(含800元)打8折;否则不打折。请为商场收银员设计一个程序,要求输入购物金额X,输出实际交款额Y。,例3 闰年是指能被4整除但不能被100整除,或者能被400整除的年份。编写一个程序,判断输入的年份是否为闰年。,例2 请设计一个求三个数中最大数的程序。,练习1 已知分段函数 -x+1 (x0),编写程序,输
11、入自变量X的值,输出相应的函数值。2 设计解关于x的不等式ax+b0的程序。,1.2基本算法语句,1.2.2 循环语句,输入语句 输出语句 赋值语句 条件语句 循环语句,循环结构的定义:,在一些算法中,从某处开始,按照一定条件,反复执行某一处理步骤的情况,这就是循环结构。 反复执行的处理步骤称为循环体。,While(当型)循环,Until(直到型)循环,两种循环结构有什么差别?,先执行循环体,然后再检查条件是否成立,如果不成立就重复执行循环体,直到条件成立退出循环。,先判断指定的条件是否为真,若条件为真,执行循环条件,条件为假时退出循环。,先执行 后判断,先判断 后执行,两种循环语句:,WHI
12、LE 条件 循环体WEND,(1)WHILE语句的一般格式:,当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句.,练习:根据1.1.2例6中的程序框图,编写计算机程序来计算1+2+100的值。,i=1sum=0WHILE i100PRINT sumEND,结束,程序框图:,程序:,思考3:根据图1.1-2,把程序框图中的内容转化为相应的程序语句。,INPUT “n=”;
13、n i=2 DO r=n MOD i i=i+1 LOOP UNTIL in-1 OR r=0 IF r=0 THEN PRINT n;是质数. ELSE PRINT n;不是质数. END IF END,练习,1.根据用二分法求方程x2-2=0的近似根的程序框图,写出相应的程序语句。,练习,结束,练习,2.编写程序,计算函数f(x)=x2-3x+5当x=1,2, 3,,20时的函数值。,练习,3.编写一个程序,输入正整数n,计算它的 阶乘n!(n!=n*(n-1)*3*2*1),t=t*ii=i+1,in,小 结,WHILE 条件 循环体WEND,DO 循环体LOOP UNTIL 条件,两种
14、循环语句:,循环体,满足条件?,是,否,(1) While(当型)循环,(2)Until(直到型)循环,循环语句练习课,WHILE 条件 循环体WEND,DO 循环体LOOP UNTIL 条件,两种循环语句:,循环体,满足条件?,是,否,(1) While(当型)循环,(2)Until(直到型)循环,练习,1.根据用二分法求方程x2-2=0的近似根的程序框图,写出相应的程序语句。,练习,结束,练习,2.编写程序,计算函数f(x)=x2-3x+5当x=1,2, 3,,20时的函数值。,练习,3.编写一个程序,输入正整数n,计算它的 阶乘n!(n!=n*(n-1)*3*2*1),t=t*ii=i+1,in,练习,6.给定这样一个数列: 0,1,1,2,3,5, ,后一个数等于前两个数的和。用直到型循环语句编写程序,输出这列数的前50个数。,4.用直到型循环语句写出求S=12+32+52+992的值的算法的程序,5.12345n1000,求符合条件的最大自然数n,试写出程序。,