课件25张PPT。
----条件语句输入:x
If x>0 then
Y=1
Else
Y=0
End if
输出 y1.2 基本算法语句高中数学老师欧阳文丰制作教学目标 1.正确理解条件语句的概念;
2.能应用条件语句编写程序.
教学重点 :
条件语句的步骤、结构及功能
教学难点 :
会编写程序中的条件语句 复习巩固1、输入语句、输出语句和赋值语句对应于算法中的哪种结构?这三种语句的一般格式是什么? 2、什么是条件结构?用程序框图表示这种结构 顺序结构输入语句输出语句赋值语句INPUT “提示文字”;变量PRINT “提示内容”;表达式变量=表达式 1. 处理条件分支逻辑结构的算法语句,叫做条件语句. Scilab语言中的条件语句分为if语句和select━case语句.2. if语句的一般格式是:if 表达式
语句序列1;
else
语句序列2;
end新课讲授 计算机执行这种格式的条件语句时,
如果表达式结果为真,则执行表达式后面的语句序列1;
当表达式结果为假时,执行else后面的语句序列2,
然后结束这一条件语句.3. if-end格式的条件语句的一般格式为:if 表达式
语句序列1;
end计算机要执行这种格式的条件语句时,先对表达式的结果进行判断,若表达式结果为真,则执行表达式后面的语句序列1,否则直接跳过语句序列1,执行其他语句。 一般在含有两个或两个以上的条件结构中,编写程序时,可利用条件语句的叠加或嵌套形式. 条件语句的综合应用
------复合条件语句 1、叠加IF语句复合条件语句 复合条件语句 2、嵌套IF语句随堂演练3、将功能为求一个数的绝对值的
程序补充完整
输入 X
If _______ Then
Y=-X
Else
Y=X
End if
输出 Y 4、读程序输入 a,b,c
IF a>b,a>c THEN
输出 a
ELSE
IF b>c THEN
输出 b
ELSE
输出 c
END IF 1)上述程序格式有误,请改正;
2)该程序的功能是: ______
2、写出下程序运行的结果 ______
输入 x
If x<0 Then
p=3x
Else
p=3+7(x-10)
End if
输出 p
若x= -2 , 则输出 _______ ;
若x= 15 , 则输出 _______1、以下问题是否需要用条件语句来描述
其算法
A 输入一个数x,输出它的绝对值;
B 求分段函数的函数值;
C 求面积为6的正方形的周长;
D 求三个数中较大的数例5 设计算法,求解一元二次方程算法描述:S1:输入a,b,cS2:计算判别式△并画出程序框图。S3:判断△>=0是否成立。若是,则计算p= -b/2a,,否则输出“方程无实根,结束算法.
S4:判断 △=0是否成立.若是,则输出x1=x2=p;否则 计算x1=p+q,x2=p-q并输出x1,x2。
典型例题讲解QBASIC程序:INPUT “a,b,c=:”;a,b,cd = b * b - 4 * a * cp = -b / (2 * a)q = SQR( d) / (2 * a)IF d >= 0 THENIF d=0 THENPRINT “x1=x2=”;pELSEPRINT “ x1,x2=”; p + q, p - qEND IFELSEPRINT “没有实根”END IFENDQBASIC程序:INPUT “a,b,c=:”;a,b,cd = b * b – 4 * a * cp = – b / (2 * a)q = SQR(ABS(d)) / (2 * a)IF d >= 0 THENx1 = p + qx2 = p – qIF x1 = x2 THENPRINT “方程只有一解”;x1ELSEPRINT “xl,x2=”; x1, x2END IFELSEPRINT “无实根”END IFEND 开 始输入a,b,cΔ=b2-4acp= -b/2aq=SQR(ABS (Δ))/(2a)x1=p+q
x2=p-qΔ≥0?x1=x2?原方程有两个不等
的实数根x1,x2原方程有两个相等
的实数根x1,x2原方程无实数根结 束是否是否程序框图:另解:例6 编写程序,使得任意输入3个整数按大到小的顺序输出。算法分析:算法思想:3个数两两比较,确定大小。按a、b、c输入,要按a、b、c输出,关键要找到最大值,将它赋值给a,中值赋给b,最小值赋给c。第一步 输入3个整数a、b、c第二步 将a与b比较,并把小者赋给b,大的赋给a;第三步 将a与c比较,并把小者赋给c,大的赋给a第四步 将b与c比较,并把小者赋给c,大的赋给b第五步 按顺序输出a,b,cINPUT “a,b,c=”;a,b,c
IF b > a THEN
t = a
a = b
b = t
END IF
IF c > a THEN
t = a
a = c
c = t
END IF
IF c > b THEN
t = b
b = c
c = t
END IF
PRINT a,b,c
END相应的QBASIC程序:开始t=a,a=b,b=tt=a,a=c,c=tt=b,b=c,c=t输入a,b,c输入a,b,cb>a?c>a?c>b?结束是是否否是否对应的流程图 铁路运输托运行李,从甲地到乙地,规定每张客票托运费计算方法是:行李质量不超过50kg时,按0.25/kg元计算;超过50kg而不超过100kg时,其超过部分按0.3元/kg计算,超过100kg时,其超过部分按0.45元/kg计算,编写程序,输入行李质量,计算并输出托运的费用,并画出程序框图。解:设行李质量为m kg,应付运费这y元,则运费公式为条件语句的应用开始输入mm≤50?m≤100?y=m×0.25y=0.25×50+
0.35×(m-50)y=0.25×50+0.35×
50+0.45×(m-100)输入m结束INPUT “m=”;mIF m<=50 THENy=m﹡0.25ELSEIF m<=100 THENy=0.25﹡50+0.35﹡ (m-50)ELSEy=0.25﹡50+0.35﹡50+
0.45﹡ (m-100)END IFEND IFPRINT “y=”;yEND 程序:程序框图:否否是是练习巩固 该程序框图所表示的算法作用是什么?并根据程序框图写出相应的程序。程序:
INPUT “a,b,c=“; a, b,c
IF a+b>c AND b+c>a AND a+c>b THEN
PRINT “Yes.”
ELSE
PRINT “No.”
END IF
END
2、把下列语句的意义翻译成程序框图(2)IF x>0 THEN
y=1
ELSE
y=0
END IF(1)IF x<0 THEN
x=ABS(x) END IF PRINT “x的绝对值为:”;x 开始X=abs(x)结束开始y=1y=0结束YNYN输出xX<0?X>0?小结1、条件结构的程序表示2、注意书写的规范性IF 条件 THEN
语句1
ELSE
语句2
END IFIF 条件 THEN
语句
END IF作业:P29练习:1,2,3,4.【课堂练习】1.课本P29页T2.读程序,说明程序的运行过程.INPUT “x=:”;x
IF 9 a=x10
b=x MOD 10
x=10*b+a
PRINT x
END IF
END[问题]如输入的数x=86,则输出的结果是什么?68 此程序用于交换一个两位数的个位和十位数字.2.课本P29页T1.INPUT “a,b,c=”; a,b,c
IF a+b>c AND a+c>b AND b+c>a THEN
PRINT “Yes.”
ELSE
PRINT “No.”
END IF
END参考答案:3.课本P29页T3.编写求一个数是偶数还是奇数的程序,从键盘输入一个整数,输出该数的奇偶性.INPUT “a=”; a
IF a MOD 2 =0 THEN
PRINT “Even.”
ELSE
PRINT “Odd.”
END IF
END参考答案:(4).闰年是指能被4整除但不能被100整除,或者能被400整除的年份,编写一个程序,判断输入的年份是否为闰年?开始输入年份yA=y MOD 4B=y MOD 100C=y MOD 400A=0且B≠0C=0是闰年是闰年结束不是闰年INPUT “请输入年份”
A=y MOD 4
B=y MOD 100
C=y MOD 400
IF A=0 AND B<>0 THEN
PRINT “是闰年”
ELSE
IF C=0 THEN
PRINT “是闰年”
ELSE
PRINT “不是闰年”
END IF
END IF
END程序:NYYN5.(P33页B组T3)INPUT “x=”;x
IF x<1 THEN
y=x
ELSE
IF x>=1 AND x<10 THEN
y=2*x-1
ELSE
y=3*x-11
END IF
END IF
PRINT“y=”;y
END参考答案: