教科版信息技术必修1 2.2做出判断的分支 课件(共24张PPT+内嵌视频)

文档属性

名称 教科版信息技术必修1 2.2做出判断的分支 课件(共24张PPT+内嵌视频)
格式 zip
文件大小 23.0MB
资源类型 教案
版本资源 教科版(2019)
科目 信息技术(信息科技)
更新时间 2025-02-05 16:24:43

文档简介

(共24张PPT)
2.2做出判断的分支
-垃圾分类
语音识别垃圾桶:语音输入不同的垃圾种类,相应的垃圾桶盖子自动打开,等待3-4秒后自动关闭。
基于可编程硬件的创客作品
对不同垃圾的选择性处理

选择结构(分支结构)
垃圾分类 分而用之
单分支结构
双分支结构
多分支结构
项目主题
设计垃圾分类程序
01
02
03
基础任务1:设置垃圾桶唤醒语
基础任务2:设置垃圾桶分类的范围
基础任务3:设置不同垃圾分类
04
进阶任务4:综合垃圾分类程序
05
拓展任务:如何添加新的垃圾类型?
自主探究”设置垃圾桶唤醒语”程序,请在导学案中圈出单分支结构部分,并总结单分支结构的基本格式。
01
设置垃圾桶唤醒语
基础任务
显示提示语
输入唤醒词i
唤醒词为"垃圾桶垃圾桶"
开始
结束
输出:"垃圾分类,从我做起!"


print("讲究卫生,保护环境,传播文明,共创和谐,分类请说:垃圾桶垃圾桶")
i=input("请输入唤醒词:") #将输入内容赋值给变量i
if i=="垃圾桶垃圾桶": #条件判断:i是否等于规定的字符串
print("垃圾分类,从我做起!")
01
设置垃圾桶唤醒语
基础任务
1.颜色不同:输入正确的字符串为绿色,#后面的内容是注释,为红色字体。
2.对齐方式不同,print("垃圾分类,从我做起!")语句相对于if语句有缩进。
3.if条件语句后面有英文的冒号。
4.“=”与“==”有什么区别?复习“=”的含义,自学“==”符号,然后填写任务清单。
单分支结构
探究新知
单分支结构:只有一个条件分支的if结构。
单分支结构
探究新知
语句1


条件表达式1
if 条件表达式1:
语句块1
格式
缩进:表示归属
同一级别:同样的缩进
默认为4个空格,或一个Tab键
关键词:如果,就
单分支结构:只有一个条件分支的if结构。
流程图
02
设置垃圾桶分类的范围
基础任务
设置垃圾桶分类的范围,在范围以内,显示该垃圾可以进行分类,超出范围,显示该垃圾不能进行分类。
设置可分类的垃圾范围
输入需要分类的垃圾名
判断垃圾是否在可分类的范围内,
如果在,就提示该垃圾可以进行分类;否则,就提示该垃圾无法进行分类!
(1)分析问题
问题解决
02
设置垃圾桶分类的范围
基础任务
记录可分类的垃圾范围:
变量wastes赋值
输入需要分类的垃圾名:name=input( )
判断name in wasteswastes是否成立:条件为真,则输出“可以进行分类”;否则,输出“无法进行分类!”
(2)抽象建模
问题解决
(3)设计算法
问题解决
wastes="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷,菜叶,饼干,番茄酱,鱼骨,虾壳,面包,过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶,海绵,篮球,卫生纸,烟蒂,扫把,菜板"
name=input("请输入垃圾名称: ")
if name in wastes:
print(name,"可以进行分类!")
else:
print(name,"无法进行分类!")
(4)程序调试
问题解决
变量wastes赋值
输入要分类的垃圾名称name
输入的垃圾在 wastes中
开始
结束
输出:该垃圾可以进行分类!


输出:该垃圾无法进行分类!
02
设置垃圾桶分类的范围
基础任务
双分支结构
探究新知
双分支结构:有两个条件分支的if结构。
if 条件表达式1:
语句块1
else :
语句块2
格式
缩进:表示归属
同一级别:同样的缩进
默认为4个空格,或一个Tab键
语句1

流程图
条件表达式1

语句2
03
设置不同垃圾分类
基础任务
在垃圾桶可分类的范围内实现垃圾分类,如果是可回收垃圾,则输出:可回收垃圾;如果是厨余垃圾则输出:厨余垃圾;如果是有害垃圾则输出:有害垃圾;否则,输出:其他垃圾。
用户输入要分类的垃圾名;
如果是可回收垃圾,
则输出:可回收垃圾;
如果是厨余垃圾
则输出:厨余垃圾;
如果是有害垃圾
则输出:有害垃圾;
否则输出:其他垃圾。
(1)分析问题
问题解决
03
设置不同垃圾分类
基础任务
四种垃圾变量分别赋值;
输入需要分类的垃圾名:name=input( )
判断name在哪个字符串变量中:如果name在recyclable_wastes中,输出:可回收垃圾;如果name在kitchen_wastes中,输出:厨余垃圾;如果name在harmful_wastes中,输出:有害垃圾;否则,输出:其他垃圾。
(2)抽象建模
问题解决
(3)设计算法
问题解决
recyclable_wastes="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷"
kitchen_wastes="菜叶,饼干,番茄酱,鱼骨,虾壳,面包"
harmful_wastes="过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶"
other_wastes="海绵,篮球,卫生纸,烟蒂,扫把,菜板"
name=input("请输入垃圾名称: ")
if name in recyclable_wastes:
print("可回收垃圾")
elif name in kitchen_wastes:
print("厨余垃圾")
elif name in harmful_wastes:
print("有害垃圾")
else:
print("其他垃圾")
(4)程序调试
问题解决
03
设置不同垃圾分类
基础任务
多分支结构
探究新知
多分支结构:有多个条件分支的if结构。
语句1


语句2


流程图
条件表达式1
条件表达式2
条件表达式N
语句N


语句N+1



if 条件表达式1:
语句块1
elif 条件表达式2:
语句块2
……
elif 条件表达式N:
语句块N
else:
语句块N+1
格式
知识点小结
分支结构:根据不同的条件判断来决定程序执行走向的结构,可以使用if分支语句实现。
if 条件表达式1:
语句块1
elif 条件表达式2:
语句块2
……
elif 条件表达式N:
语句块N
else:
语句块N+1
if 条件表达式:
语句块1
if 条件表达式:
语句块1
else :
语句块2
单分支
双分支
多分支
请将程序合并成一个完整的项目。要求:
(1)当输入唤醒词“垃圾桶垃圾桶”时,垃圾桶输出“垃圾分类,从我做起!”
(2)设置垃圾桶分类的范围,在范围以内,显示该垃圾可以进行分类,超出范围,显示该垃圾不能进行分类。
(3)实现垃圾分类,如果是可回收垃圾,则输出:可回收垃圾;如果是厨余垃圾则输出:厨余垃圾;如果是有害垃圾则输出:有害垃圾;否则,输出:其他垃圾。
04
综合垃圾分类程序
进阶任务
程序对比
print("讲究卫生,保护环境,传播文明,共创和谐,分类请说:垃圾桶垃圾桶")
#定义可分类的垃圾范围
wastes="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷,菜叶,饼干,番茄酱,鱼骨,虾壳,面包,过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶,海绵,篮球,卫生纸,烟蒂,扫把,菜板"
#定义可回收垃圾
recyclable_wastes="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷"
#定义厨余垃圾
kitchen_wastes="菜叶,饼干,番茄酱,鱼骨,虾壳,面包"
#定义有害垃圾
harmful_wastes="过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶"
#定义其他垃圾
other_wastes="海绵,篮球,卫生纸,烟蒂,扫把,菜板"
#基础任务1:设置垃圾桶唤醒语
i=input("请输入唤醒词:") #将输入内容赋值给变量i
if i=="垃圾桶垃圾桶": #条件判断:i是否等于规定的字符串
print("垃圾分类,从我做起!")
#基础任务2:设置垃圾桶分类的范围
name=input("请输入垃圾名称: ")
if name in wastes:
print(name,"可以进行分类!")
else:
print(name,"无法进行分类!")
#基础任务3:设置不同垃圾分类
name=input("请输入垃圾名称: ")
if name in recyclable_wastes:
print("可回收垃圾")
elif name in kitchen_wastes:
print("厨余垃圾")
elif name in harmful_wastes:
print("有害垃圾")
else:
print("其他垃圾")
如果简单合并三个基础任务是否可行?输入“足球”试一试为什么出现这种问题?
知识点小结
分支的嵌套是指分支中还存在分支的情况,即 if 语句中还包含着 if 语句。
If 条件1:
if 条件2:
语句a
else:
语句b
else:
语句c
If 条件1:
语句a
else:
if 条件2:
语句b
else:
语句c
例1
例2
驱动性问题:要求必须输入正确的唤醒词后,才能进行垃圾分类,思考该如何修改程序?
温馨提示:Python自带的IDLE中可以使用“Ctrl+]”实现整块缩进。
方法:先选中要整体缩进的部分,按住Ctrl,再按一次],按一次往右侧缩进一次,按住Ctrl,再按一次[,撤销缩进。
04
综合垃圾分类程序
进阶任务
程序对比
print("讲究卫生,保护环境,传播文明,共创和谐,分类请说:垃圾桶垃圾桶")
wastes="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷,菜叶,饼干,番茄酱,鱼骨,虾壳,面包,过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶,海绵,篮球,卫生纸,烟蒂,扫把,菜板"
recyclable_waste="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷"
kitchen_waste="菜叶,饼干,番茄酱,鱼骨,虾壳,面包"
harmful_waste="过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶"
i=input("请输入唤醒词:") #将输入内容赋值给变量i
if i=="垃圾桶垃圾桶": #条件判断:i是否等于规定的字符串
print("垃圾分类,从我做起!")
name=input("请输入垃圾名称: ")
if name in wastes:
if name in recyclable_waste:
print("可回收垃圾")
elif name in kitchen_waste:
print("厨余垃圾")
elif name in harmful_waste:
print("有害垃圾")
else:
print("其他垃圾")
else:
print(name,"无法进行分类!")
print("讲究卫生,保护环境,传播文明,共创和谐,分类请说:垃圾桶垃圾桶")
recyclable_waste="塑料瓶,食品罐头,玻璃瓶,易拉罐,报纸,牙刷"
kitchen_waste="菜叶,饼干,番茄酱,鱼骨,虾壳,面包"
harmful_waste="过期药品,废电池,杀虫剂,油漆桶,注射器,香水瓶"
other_waste="海绵,篮球,卫生纸,烟蒂,扫把,菜板"
i=input("请输入唤醒词:") #将输入内容赋值给变量i
if i=="垃圾桶垃圾桶": #条件判断:i是否等于规定的字符串
print("垃圾分类,从我做起!")
name=input("请输入垃圾名称: ")
if name in recyclable_waste:
print("可回收垃圾")
elif name in kitchen_waste:
print("厨余垃圾")
elif name in harmful_waste:
print("有害垃圾")
elif name in other_waste:
print("其他垃圾")
else:
print(name,"无法进行分类!")
程序你还发现哪些问题?如果输入错误的唤醒语是否可以分类?请尝试修改程序。
请问,你觉得这个垃圾分类程序有哪些不足?你打算如何改进呢?
请思考要设计一款有“学习能力”的垃圾分类系统,关键是什么?
05
如何添加新的垃圾类型?
拓展任务
能存储用户输入的数据
课堂小结