4.3 运用选择结构描述问题求解过程 课件(共56张PPT) 2022-2023+学年粤教版(2019)高中信息技术+必修1

资源下载
  1. 二一教育资源

4.3 运用选择结构描述问题求解过程 课件(共56张PPT) 2022-2023+学年粤教版(2019)高中信息技术+必修1

资源简介

(共56张PPT)
BIG DATA
4.3 运用选择结构
描述问题求解过程
第四章
授课人:XXX
知识回顾
需掌握的知识
程序语言基础知识
常量、变量
数据类型
运算符、表达式
函数
三种基本控制结构
顺序结构
选择结构
循环结构
if语句的应用
if…elif…else语句的应用
ONE
if语句的应用
01
从键盘分别输入体重、身高,请你编写程序计算BMI指数,并根据BMI指数判断是否为正常体重。
(18.5<=BMI<24为正常体重)
实例:根据BMI指数判断体重状态1.0
1.分析问题
实例:根据BMI指数判断体重状态1.0
从键盘分别输入体重、身高,请你编写程序计算BMI指数,并根据BMI指数判断是否为正常体重。
(18.5<=BMI<24为正常体重)
已知的数据是什么?
求解的数据是什么?
体重、身高
BMI指数
条件:
18.5<=BMI<24,则为正常体重
判断:
是否为正常体重
实例:根据BMI指数判断体重状态1.0
2.设计算法
①输入体重w
②输入身高h
③计算BMI指数:bmi=w/h2
开始
输入体重w
输入身高h
bmi=w/h2
结束
输出bmi
④输出bmi
实例:根据BMI指数判断体重状态1.0
2.设计算法
①输入体重w
②输入身高h
③计算BMI指数:bmi=w/h2
开始
输入体重w
输入身高h
bmi=w/h2
结束
18.5≤bmi<24
输出”体重正常”
Y
N
输出bmi
④输出bmi
⑤如果18.5≤bmi<24,则输出“体重正常”
单分支if语句
条件表达式
语句A
Y
N
if语句执行过程
如果条件表达式为真,则执行语句A,然后继续往下执行
如果条件表达式为假,则不执行语句A,然后继续往下执行
条件表达式可以是关系表达式
也可以是逻辑表达式
注意:
单分支if语句
语句格式
if (条件表达式):
语句A
单分支if语句
语句格式
if (条件表达式) :
语句A
注意事项:
① if后面要空1个空格再写条件表达式
② if (条件表达式)后面加冒号“:”,是英文状态下的““:”
③写语句A之前要缩进,也就是空4个空格或按1次Tab键



单分支if语句
一起来找茬:找出格式书写正确的程序段
if 18.5<=bmi<24
print(“体重正常”)
if 18.5<=bmi<24:
print(“体重正常”)
if :18.5<=bmi<24
print(“体重正常”)
if 18.5<=bmi<24:
print(“体重正常”)
if (条件表达式):
语句A
单分支if语句
一起来找茬:找出格式书写正确的程序段
if 18.5<=bmi<24
print(“体重正常”)
if 18.5<=bmi<24:
print(“体重正常”)
if :18.5<=bmi<24
print(“体重正常”)
if 18.5<=bmi<24:
print(“体重正常”)
无冒号
冒号位置错误
无缩进
if (条件表达式):
语句A
单分支if语句
关于“缩进”,需注意:
当语句A是由多个语句构成的复合语句时,所有语句严格遵循相同的缩进
if 18.5<=bmi<24:
print(“体重正常”)
print(“请继续保持!”)
if 18.5<=bmi<24:
print(“体重正常”)
print(“请继续保持!”)
实例:根据BMI指数判断体重状态1.0
3.编写程序
开始
输入体重w
输入身高h
bmi=w/h2
结束
18.5≤bmi<24
输出”体重正常”
Y
N
输出bmi
w=float(input("请输入体重:"))
h=float(input("请输入身高:"))
bmi=w/h**2
print("BMI指数为:",bmi)
if 18.5<=bmi<24:
print(“体重正常”)
实例:根据BMI指数判断体重状态1.0
4.调试运行程序
实例:根据BMI指数判断体重状态1.0
4.调试运行程序
发现:当体重偏轻或偏重时,程序没有相应的提示信息,该如何解决?
实例:根据BMI指数判断体重状态2.0
优化程序
①输入体重w
②输入身高h
③计算BMI指数:bmi=w/h2
开始
输入体重w
输入身高h
bmi=w/h2
结束
18.5≤bmi<24
输出”体重正常”
Y
N
输出bmi
④输出bmi
⑤如果18.5≤bmi<24,则输出“体重正常”
否则,输出“体重不正常”
输出
”体重不正常”
双分支if语句
if语句执行过程
如果条件表达式为真,则执行语句A,然后继续往下执行
如果条件表达式为假,则执行语句B,然后继续往下执行
条件表达式
语句A
Y
N
语句B
双分支if语句
语句格式
if (条件表达式):
语句A
else:
语句B
注意事项:
① if和else对齐;else后面加冒号“:”
②当语句A和语句B由多个语句构成时,所有语句严格遵循相同的缩进
实例:根据BMI指数判断体重状态2.0
补充程序
w=float(input("请输入体重:"))
h=float(input("请输入身高:"))
bmi=w/h**2
print("BMI指数为:",bmi)
if 18.5<=bmi<24:
print(“体重正常”)
else:
print(“体重不正常”)
开始
输入体重w
输入身高h
bmi=w/h2
结束
18.5≤bmi<24
输出”体重正常”
Y
N
输出bmi
输出
”体重不正常”
实例:根据BMI指数判断体重状态2.0
调试运行程序
新知检验
a=1
b=2
if aa=b
print(a)
a=3
b=2
if aa=b
else:
a=-b
print(a)
请阅读以下程序题,判断输出的结果
a=3
b=2
if aa=b
print(a)
2
3
-2
新知检验
问题1:输入某同学信息技术考试成绩(0-100),判断是否通过考试。如果60分及以上,则通过考试,输出“通过”;如果60分以下,则输出“不通过”。
请完善该程序:
score = ① (input(“请输入考试成绩:”))
if ② :
print(“通过”)

print(“不通过”)
新知检验
问题1:输入某同学信息技术考试成绩(0-100),判断是否通过考试。如果60分及以上,则通过考试,输出“通过”;如果60分以下,则输出“不通过”。
请完善该程序:
score = (input(“请输入考试成绩:”))
if :
print(“通过”)
print(“不通过”)
int
60<=score<=100
else:
新知检验
问题2:项目小组成员在某购物网站上了解到某种笔记本搞优惠活动,规定:
一次购买6本以上(含6本)10本以下(含10本)打九折;
一次购买11本以上(含11本)打八折。
项目小组成员根据以上计费标准,用Python编写了一段程序让电脑自动计算购买笔记本的总费用,程序代码如下:
新知检验
请将程序代码补充完整:
s=int(input(“请输入购买的笔记本的数量(本):”))
p=float(input(“请输入笔记本的单价(元):”))
if s<6:
j=1.0 #j为折扣系数
t=s*p*j
print(“总费用为:”,”%.1f“%t,”元”)
条件:
一次购买6本以上(含6本)10本以下(含10本)打九折;
一次购买11本以上(含11本)打八折
新知检验
请补充完整程序代码:
s=int(input(“请输入购买的笔记本的数量(本):”))
p=float(input(“请输入笔记本的单价(元):”))
if s<6:
j=1.0 #j为折扣系数
if 6<=s<=10:
j=0.9
if s>=11:
j=0.8
t=s*p*j
print(“总费用为:”,”%.1f“%t,”元”)
TWO
if…elif…else语句的应用
02
实例:根据BMI指数判断体重状态2.0
“体重不正常”存在着偏轻和偏重两种情况,如何优化程序?
从键盘分别输入体重、身高,请你编写程序计算BMI指数,并根据BMI指数判断属于哪一体重状态。
轻体重:BMI<18.5
正常体重:18.5<=BMI<24
超重:24<=BMI<28
肥胖:BMI>=28
实例:根据BMI指数判断体重状态3.0
存在着多个判断条件,该如何解决?
多分支if语句
表达式1
语句1
Y
N
语句N
表达式2
语句2
表达式3
Y
N
语句3
Y
表达式N
...
N
Y
N
语句N+1
...
...
执行过程
如果表达式1成立,
则执行语句1;
如果不成立,判断表达式2是否成立,
成立则执行语句2,不成立就继续往下判断,
直到表达式N也不成立,则执行语句N+1
多分支if语句
if (表达式1):
语句1
elif(表达式2):
语句2
……
elif(表达式N):
语句N
else:
语句N+1
语句格式
注意事项:
①if,else只有一个;
elif可以有多个
②if,elif,else要对齐;
③else后面要加冒号“:”
从键盘分别输入体重、身高,请你编写程序计算BMI指数,并根据BMI指数判断属于哪一体重状态。
轻体重:BMI<18.5
正常体重:18.5<=BMI<24
超重:24<=BMI<28
肥胖:BMI>=28
实例:根据BMI指数判断体重状态3.0
实例:根据BMI指数判断体重状态3.0
补充程序
w=float(input("请输入体重:"))
h=float(input("请输入身高:"))
bmi=w/h**2
print("BMI指数为:",bmi)
if bmi<18.5:
print(“轻体重”)
print(“体重正常”)
print(“超重”)
print(“肥胖”)
条件:
轻体重:BMI<18.5
正常体重:18.5<=BMI<24
超重:24<=BMI<28
肥胖:BMI>=28
实例:根据BMI指数判断体重状态3.0
补充程序
w=float(input("请输入体重:"))
h=float(input("请输入身高:"))
bmi=w/h**2
print("BMI指数为:",bmi)
if bmi<18.5:
print(“轻体重”)
print(“体重正常”)
print(“超重”)
print(“肥胖”)
条件:
轻体重:BMI<18.5
正常体重:18.5<=BMI<24
超重:24<=BMI<28
肥胖:BMI>=28
elif 18.5<=bmi<24:
elif 24<=bmi<28:
else:
实例:根据BMI指数判断体重状态3.0
优化程序
w=float(input("请输入体重:"))
h=float(input("请输入身高:"))
bmi=w/h**2
print("BMI指数为:",bmi)
if bmi<18.5:
print(“轻体重”)
print(“体重正常”)
print(“超重”)
print(“肥胖”)
条件:
轻体重:BMI<18.5
正常体重:18.5<=BMI<24
超重:24<=BMI<28
肥胖:BMI>=28
elif bmi<24:
elif bmi<28:
else:
新知检验
1.小王编写了出租车收费的Python程序,代码如下:
s = int(input("请输入行驶路程(公里):"))
if s <= 3:
f= 10
elif s <= 10:
f = 10 + 2.5 *(s- 3)
else:
f = 27.5 + 3.5 *( s - 10 )
print(“应收费:”,f,”元”)
要测试所有分支程序代码是否正确,以下测试数据中,最恰当的一组是( )
A . 3,8 B. -1,5,12 C. 1,6,20 D . 3,12,20
C
C. 1,6,20
新知检验
2.2021年10月16日,翟志刚、王亚平、叶光富3名航天员乘坐神舟十三号载人飞船进入太空。载人飞船要飞入太空,必须达到宇宙速度。关于宇宙速度,有如下一些规定:
第一宇宙速度:7.9km/s
第二宇宙速度:11.2km/s
第三宇宙速度:16.7km/s
航天器速度 运行状态
v<7.9 不能进入太空
7.9≤v<11.2 绕地球运动
11.2≤v<16.7 绕太阳运动
v≥16.7 摆脱太阳引力
飞往宇宙空间
新知检验
任务:编写程序,输入航天器的速度,判断它的运行状态。
第一宇宙速度:7.9km/s
第二宇宙速度:11.2km/s
第三宇宙速度:16.7km/s
航天器速度 运行状态
v<7.9 不能进入太空
7.9≤v<11.2 绕地球运动
11.2≤v<16.7 绕太阳运动
v≥16.7 摆脱太阳引力
飞往宇宙空间
判断航天器运行状态
1.分析问题
a.需要用几个变量来存储数据?
速度v
b.存储速度的变量数据类型是什么?
浮点型float
数学关系式 Python表达式
v<7.9
7.9≤v<11.2
11.2≤v<16.7
v≥16.7
c.怎么将数学关系式转换为Python表达式
v<7.9
7.9<=v<11.2
11.2<=v<16.7
v>=16.7
d.应采用哪种程序控制结构?
选择结构--多分支
判断航天器运行状态
2.设计算法
v<7.9
不能进入
太空
Y
N
7.9<=v<11.2
绕地球
运动
11.2<=v<16.7
Y
N
绕太阳
运动
Y
N
飞往宇宙空间
开始
输入速度v
结束
判断航天器运行状态
3.编写程序
v<7.9
不能进入
太空
Y
N
7.9<=v<11.2
绕地球
运动
11.2<=v<16.7
Y
N
绕太阳
运动
Y
N
飞往宇宙空间
开始
输入速度v
结束
判断航天器运行状态
3.编写程序
v=float(input(“请输入航天器速度:"))
if v<7.9:
print(“不能进入太空”)
elif 7.9<=v<11.2:
print(“绕地球运动”)
elif 11.2<=v<16.7:
print(“绕太阳运动”)
else:
print(“飞往宇宙空间”)
v<7.9
不能进入
太空
Y
N
7.9<=v<11.2
绕地球
运动
11.2<=v<16.7
Y
N
绕太阳
运动
Y
N
飞往宇宙空间
开始
输入速度v
结束
判断航天器运行状态
4.调试运行程序
课堂小结
课堂练习
新知检验
有一种特殊的3位数做水仙花数,这种数的特点是个位、十位、百位上的数字的3次幂之和等于它本身。
例如:153是水仙花数(1 ^ 3+5 ^ 3+3 ^ 3=153,结果为153本身);
123不是水仙花数(1 ^ 3+2 ^ 3+3 ^ 3=36,结果不为123本身)。
请补充下面的程序,使得程序运行时能够判断输入的3位数是否为水仙花数,是的话输出“yes”, 不是则输出“no”。
输入输出样例如下:
①输入:153 输出:yes
②输入:123 输出:no
操作提示:打开文件夹中的“P2.py”文件,填写正确的代码,完善该程序,实现上述功能,调试完成后保存“P2.py”文件。
新知检验
#注释:以下为“P2.py”的代码,请完善该程序。
num = input('请输入一个3位数:') # 从键盘输入一个3位数,类型为字符串
a, b, c = int(num[0]), int(num[1]), int(num[2]) # 分别将这三位数的各个位数转化为整型
num = int(num) # 将这个3位数从字符串类型转化为整型,方便计算。
#请在下面编写程序
新知检验
#注释:以下为“P2.py”的代码,请完善该程序。
num = input('请输入一个3位数:') # 从键盘输入一个3位数,类型为字符串
a, b, c = int(num[0]), int(num[1]), int(num[2]) # 分别将这三位数的各个位数转化为整型
num = int(num) # 将这个3位数从字符串类型转化为整型,方便计算。
#请在下面编写程序
if a**3+b**3+c**3 == num:
print(“yes”)
else:
print(“no”)
课堂练习
新知检验
青青农场迎来热闹的草莓采摘季,A、B两个大棚的草莓结果量人约是2:1。
为均衡两个大棚的人流量,编号能被3整除的游客进入B棚采摘,其他游客进入A棚采摘。
编写一个Python程序,根据游客编号引导他们进入A、B两个大棚。
操作提示:打开文件夹中的“P2.py”文件,填写正确的代码,完善该程序,实现上述功能,调试完成后保存“P2.py”文件。
新知检验
#注释:以下为“P2.py”的代码,请完善该程序,实现输入游客编号,
输出引导语。
h = int(input("请输入您的编号:"))
#请在以下区域编写程序
#以下是输出语句,不能更改
print("请您进入", p,"棚采摘。")
新知检验
#注释:以下为“P2.py”的代码,请完善该程序,实现输入游客编号,
输出引导语。
h = int(input("请输入您的编号:"))
#请在以下区域编写程序
#以下是输出语句,不能更改
print("请您进入", p,"棚采摘。")
if h%3==0:
p=‘B’
else:
p=‘A’
BIG DATA
那就下次再聊吧~
第四章
授课人:XXX

展开更多......

收起↑

资源预览