(共13张PPT)
多分支结构程序设计
浙教版八年级上 第二单元第6课
新课导入
同学们,你是否能改进上节课的程序。当给出汽车经过两个监测点的时间,判断汽车是否超速,超速的严重程度?
现在有两个相距25km的监测点。如果汽车没有超速,则输出“正常”;否则根据情况输出:
(1)100(2)120<=v<150,输出“超过规定时速20%以上且不足50%”
(3)150<=v<170,输出“超过规定时速50%以上且不足70%”
(4)v>=170,输出“超过规定时速70%以上”
开始
输入汽车时间t
v←25/(t/3600)
结束
v <100
输出“正常”
N
Y
v <120
输出
“超过规定时速且不足20%”
v <150
v <170
输出
“超过规定时速20%以上且不足50%”
输出
“超过规定时速50%以上且不足70%”
Y
Y
Y
输出
“超过规定时速70%”
输入t=720
v=125
N
N
N
新知讲授
在分支结构程序中,当选择的情况较多时,可以使用if-elif条件语句。
if <条件1>:
<语句块1>
elif <条件2>:
<语句块2>
elif <条件n>:
<语句块n>
[else:
<语句块n+1>]
…
条件1
Y
N
条件2
条件n
N
N
Y
Y
语句块1
语句块2
语句块n
语句块n+1
…
一个if条件语句可以包含多个elif子句,仅当if条件不为真时,elif子句的语句块才可能被执行;如果if和elif子句的条件都不为真,else子句的语句块就会被执行。
新知讲授
编写代码
s=25 #两个监测点相距25km
t=int(input()) #输入通过监测点的时间
v=s*3600/t #3600是秒和小时的单元换算系数
if v<=100:
print(“正常”)
elif v<120:
print("超过规定时速且不足20%")
elif v<150:
print("超过规定时速20%以上且不足50%")
elif v<170:
print("超过规定时速50%以上且不足70%")
else:
print("超过规定时速70%以上")
任务探究
画出流程图并编写程序:比较三个数a,b,c,输出其中最小的数。
要找出三个数中的最大数,还可以用什么方法?
a=input("请输入第一个数:")
b=input("请输入第二个数:")
c=input("请输入第三个数:")
if a<=b and a<=c:
print("三个数中最小数为:",a)
elif b<=c:
print("三个数中最小数为:",b)
else:
print("三个数中最小数为:",c)
任务探究
编写程序,实现算术四则运算的简易计算器功能。
问题分析
根据四则运算进行计算并输入运算结果,需要注意哪些方面呢?
运算符只能是加、减、乘、除
当运算符为除时,除数不能为0
任务探究
编写程序,实现算术四则运算的简易计算器功能。
算法设计
任务探究
编写程序,实现算术四则运算的简易计算器功能。
编写代码
#t简易计算器(四则运算)
x=float(input("请输入第一个运算数:"))
y=float(input("请输入第二个运算数:"))
op=input("请输入算术运算符(+-*/):")
c=0
if op=="+":
c=x+y
print("运算结果为:",c)
elif op=="-":
c=x-y
print("运算结果为:",c)
elif op=="*":
c=x*y
print("运算结果为:",c)
elif op=="/":
if y!= 0:
c=x/y
print("运算结果为:",c)
else:
print("除数不能为零!")
else:
print("运算符输入有误!")
任务探究
编写程序,实现算术四则运算的简易计算器功能。
调试运行
提高练习
编写“登录程序”,实现:输入账号和密码,校验是否正确。
开始
输入账号和密码
输出“账号或密码有误!”
结束
是否正确?
输出“登录成功!”
Y
N
提高练习
用海伦公式求三角形面积。在如下程序划线处填空,实现:输入三条边的长度,先判断能否组成一个三角形,若能组成三角形,则利用海伦公式计算三角形的面积,否则显示“输入的三条边,不能构成三角形!”
# 输入三条边长
a = float(input("输入三角形第一边长: "))
b = float(input("输入三角形第二边长: "))
c = float(input("输入三角形第三边长: "))
#若构成三角形,则求三角形面积
if _____________________________
p= (a + b + c) / 2
area = (p*(p-a)*(p-b)*(p-c)) ** 0.5
print("三角形面积为:",area)
else:
print("输入的三条边,不能构成三角形!")
a+b>c and b+c>a and c+a>b:
课堂小结