1、1.2.3基本算法语句算法初步输入语句输入语句输出语句输出语句赋值语句赋值语句条件语句条件语句循环语句循环语句常用的程序设计语言:常用的程序设计语言:BASIC、C语言、语言、VB、ASP、Java等等。等等。基本算法语句基本算法语句算法的三种基本逻辑结构:顺序结构,条件结构和循环结构。算法的三种基本逻辑结构:顺序结构,条件结构和循环结构。各种程序语言都包含了下列基本的算法语句:各种程序语言都包含了下列基本的算法语句:算法:算法:第二步:计算第二步:计算 的值;的值;3232430yxxx开始开始输入输入x3232430yxxx输出输出x,y结束结束框图:框图:例例1.用描点法作函数用描点法作
2、函数 的图象时,需要求出的图象时,需要求出 自变量和函数的一组对应值,编写程序,分别计算当自变量和函数的一组对应值,编写程序,分别计算当x=-5,-4,-3,-2,-1,0,1,2,3,4,5时的函数值。时的函数值。3232430yxxx第一步:输入第一步:输入x的值;的值;第三步:输出第三步:输出x,y的值。的值。程序:程序:INPUT“x=”;xy=x3+3 x2-24 x+30PRINT xPRINT yEND*输入、输出语句输入、输出语句赋值语句赋值语句-输入语句输入语句 -赋值语句赋值语句-表示结束表示结束-输出语句输出语句程序:程序:INPUT“x=”;xy=x3+3 x2-24
3、x+30PRINT xPRINT yEND*INPUT “提示内容”;变量输入语句:输入语句:输出语句:输出语句:PRINT “提示内容”;表达式赋值语句:赋值语句:变量变量=表达式 输入语句输入语句和和输出语句输出语句分别用来实现算法的输入信息,输分别用来实现算法的输入信息,输出结果的功能。出结果的功能。输入语句:输入语句:INPUTINPUT “提示内容提示内容”;变变量量输出语句:输出语句:PRINTPRINT “提示内容提示内容”;表达表达式式赋值语句:赋值语句:变量变量=表达式表达式 除法取余数除法取余数MODMOD除法取商除法取商=幂运算幂运算 除法运算除法运算/乘法运算乘法运算功
4、能功能运算符运算符 *InxInx|x|x|功能功能LOG(x)LOG(x)SQR(x)SQR(x)ABS(x)ABS(x)注意事项注意事项函数名函数名xx0 x0 x0 x0INPUT语句语句PRINT语句语句赋值语句赋值语句格式格式INPUT“提示内容”;变量PRINT“提示内容”;表达式变量变量=表达式说明说明1.“提示内容提示内容”和它后面的和它后面的 “;”可以省略;可以省略;2.一个语句可以给多个变一个语句可以给多个变 量赋值,中间用量赋值,中间用“,”隔隔 开;开;3.无计算无计算功能,功能,不能输入不能输入 表达式;表达式;4.输入多个数据时用输入多个数据时用“,”分隔,且个数
5、要与变量分隔,且个数要与变量 的个数相同。的个数相同。1.“提示内容提示内容”和它后面的和它后面的 “;”可以省略;可以省略;2.一个语句可以输出多个表一个语句可以输出多个表 达式,不同的表达式之间达式,不同的表达式之间 用用“,”隔开;隔开;3.表达式可以是变量,也可表达式可以是变量,也可 以是计算公式;以是计算公式;4.有有计算计算功能,能直接输出功能,能直接输出 计算公式的值。计算公式的值。1.“=”左侧左侧必须是变必须是变 量量,右侧可以是数右侧可以是数 字、变量或者是计字、变量或者是计 算公式;算公式;2.一个语句只能有一一个语句只能有一 个个“=”,并且只能,并且只能给给 一一 个
6、变量赋值个变量赋值;3.有有计算计算功能,可以功能,可以 把表达式的值赋给把表达式的值赋给 一个变量。一个变量。输入语句输入语句 INPUT 的常用方法的常用方法:INPUT“提示内容”;变量INPUT 变量INPUT“提示内容”;变量1,变量2,变量3,INPUT 变量1,变量2,变量3,输出语句输出语句 PRINT 的常用方法的常用方法:PRINT“提示内容”;表达式PRINT 表达式PRINT“提示内容”;表达式1,表达式2,表达式3,PRINT 表达式1,表达式2,表达式3,输入、输出语句常见形式输入、输出语句常见形式变式:编写程序,计算一个学生数学、语文、英语三门课的平均成绩。变式:
7、编写程序,计算一个学生数学、语文、英语三门课的平均成绩。算法:算法:第一步:分别输入三科的成绩第一步:分别输入三科的成绩a,b,c;第二步:计算第二步:计算average=(a+b+c)/3;第三步:输出三科平均分。第三步:输出三科平均分。框图:框图:开始开始输入输入a,b,c输出输出average结束结束average=(a+b+c)/3程序程序1:INPUT“Maths=”;aINPUT“Chinese=”;bINPUT“English=”;caverage=(a+b+c)/3PRINT“The average=”;averageENDINPUT“Maths,Chinese,English
8、=”;a,b,c程序程序2:PRINT“The average=”;(a+b+c)/3END例例2.分析下列程序,考虑输出的结果是什么?分析下列程序,考虑输出的结果是什么?程序程序2:A=10 A=A+15 PRINT A END程序程序1:a=1 x=a+1 PRINT x END程序程序3:a=1 b=3 PRINT“a+b=”;a+b END 答:2答:25答:a+b=4A=10A=A+15PRINT AA=A+5PRINT AEND例例交换两个变量交换两个变量A A和和B B的值的值,并输出交换前后并输出交换前后 的值。的值。分析:分析:引入一个引入一个中间变量中间变量X X,将将A
9、A的值赋予的值赋予X,X,又将又将B B的值赋予的值赋予A A,再将,再将X X的值赋予的值赋予B B,从而达到交换,从而达到交换A A,B B的值的值.(比如交换装满水的两个水桶里的水需要(比如交换装满水的两个水桶里的水需要再找一个空桶)再找一个空桶)INPUT AINPUT BPRINT A,BX=AA=BB=XPRINT A,BEND程序程序:问题问题:能否用下列赋值能否用下列赋值语句交换语句交换A,B的值的值?A=BB=A不能不能!IF 条件条件 THEN 语句体语句体1ELSE 语句体语句体2END IFIF 条件条件 THEN 语句体语句体END IF满足条件?语句体是否满足条件?
10、语句体1语句体2是否条件结构常用的程序语言和格式(单分支条件结构)单分支条件结构)(双分支条件结构)双分支条件结构)1、编写一个程序,求任意实数的绝对值。、编写一个程序,求任意实数的绝对值。INPUT “x=”;xIF x0 THEN y=-xELSEy=xEND IFPRINT “x=”;yEND程序如下:程序如下:程序框图:程序框图:开始开始输入输入 xy=-xy=x输出输出 y结束结束x0?是是否否【例题解析例题解析】思考:编写一个程序,对于函数思考:编写一个程序,对于函数y=y=x (x2)x (x2)3x+2 (2x8)3x+2 (2x8)2x2x2 2 (x8)(x8)输入输入x
11、x值,输出相应函数值。值,输出相应函数值。INPUT“x=”;xINPUT“x=”;xIF x2 THENIF x2 THEN y=x y=xELSEELSE IF x8 THEN IF x8 THEN y=3 y=3*x+2x+2 ELSE ELSE y=2 y=2*x2x2 END IF END IF END IFEND IFPRINT“y=”;yPRINT“y=”;yENDEND开始开始输入输入xX2?y=xy=3x+2y=2x2输出输出yX100?否是例3 根据下面的程序框图写出相应的程序i=1sum=0DOi=i+1sum=sum+iLOOP UNTIL i100PRINT sEND
12、循环结构循环结构循环语句循环语句例 根据下面的程序框图写出相应的程序i=1s=0WHILE i=100i=i+1s=s+iWENDPRINT sEND结束s=s+ii=i+1i=100?输出S否是i=1,S=0开始循环结构循环结构循环语句循环语句解:1.根据下面的程序语句画出对应的程序框图,并分析程序的结果。s=0i=2WHILE i10PRINT sumEND练习练习开始开始i=1S=0i100?是是S=S+ii=i+1否否输出输出S结束结束当型循环当型循环结构结构变式训练变式训练(1):(1):编写程序求编写程序求:n!=1:n!=12 23 34 45 5n n的值的值.如何修改如何修改
13、?输入输入nWHILEWHILE语句语句i=1S=0WHLIE i100PRINT SENDS=1101S=Sii=i+2是是开始开始结束结束i=1S=0i=i+1S=S+i输出输出Si100?否否直到型直到型S=1S=Si i=i+2i101?开始开始结束结束i=1i=1S=0S=0i=i+1i=i+1S=S+iS=S+i输出输出S Si100?i100?N NY Y例例2 2:编写程序计算:编写程序计算1 1+2+2+3+3+100+100的值。的值。i=1i=1S=0S=0DODO S=S+i2 S=S+i2 i=i+1i=i+1LOOP UNTIL i100LOOP UNTIL i10
14、0PRINT SPRINT SENDEND直到型直到型练习练习1 1:编写程序计算:编写程序计算2+22+2+2+23 3+2+25050的值。的值。练习练习2 2:编写程序计算:编写程序计算 的值。的值。1091431321211练习练习:练习练习1 1:编写程序计算:编写程序计算2+22+2+2+23 3+2+25050的值。的值。开始开始结束结束i=1i=1S=0S=0i=i+1i=i+1S=S+2S=S+2i i输出输出S Si50?i50?N NY Yi=1i=1S=0S=0DODO S=S+2i S=S+2i i=i+1 i=i+1LOOP UNTIL i50LOOP UNTIL
15、i50PRINT SPRINT SENDEND例例7 7:编写程序,计算:编写程序,计算s=a+aa+aaa+s=a+aa+aaa+aa+aaa a,其中,其中a(aa(a9)是一个数字(例如是一个数字(例如2+22+222+2+22+222+)要求输入数字)要求输入数字a a和相加的数的个数和相加的数的个数n.n.INPUT INPUT“a=,n=”;a,n“a=,n=”;a,nt=0t=0s=0s=0i=1i=1WHILE i=nWHILE i=n t=t+a t=t+a s=s+t s=s+t a=10 a=10*a a i=i+1i=i+1WENDWENDPRINT sPRINT sE
16、NDENDINPUT INPUT“a=,n=”;a,n“a=,n=”;a,ns=0s=0i=1i=1WHILE i=nWHILE i10000?否是i=0sum=0DOi=i+1sum=sum+iLOOP UNTIL sum10000PRINT iEND练习巩固设计一个算法框图:逐个输出设计一个算法框图:逐个输出1 12 2,2 22 2,3 32 2,n n2 2,并写,并写出相应的出相应的QBASICQBASIC程序。程序。INPUT ni=0WHILE i =nEND结束i=0开始i=i+1:t=i2i=n?否是PRINT tINPUT n课堂小结2、条件结构的一般格式3、循环语句的一般格式4、程序框图和程序语言的相互转换WHILE 条件成立条件成立 循环体循环体WENDDO 循环体循环体LOOP UNTIL 条件成立条件成立IF IF 条件条件 THENTHEN 语句体语句体END IFEND IFIF 条件条件 THEN 语句体语句体1ELSE 语句体语句体2END IF1、输入、输出及赋值语句