(共22张PPT)
第二章
第四节 自动售货机
粤教B版 八年级下
信
技
息
术
新知导入
炎热的夏天,刚打完球的李鸣与小伙伴们到学校的自动售货机买矿泉水,但是他们发现这台售货机每次只能买一瓶水,很不方便。李鸣想对自动售货机的程序进行改良,用户可以重复输入多个购买的商品号,直到选择完毕才结算,实现一次购买多个商品。
(1)如何列出多项数据项
(2)如何在程序中描述重复执行的操作
(3)如何从多项数据中选择指定的数据项
思
考
看
看
一
新知导入
日常生活中,我们去书店买书,去超市购物,服务员都是反复输入我们购买的商品,直到输入完毕才统一结算。重复执行某些操作是很常见的。
生活中的循环
了解自动售货机的操作方法,设计一个自动售货机程序:利用计算机键盘模拟售货机的操作按键,可多次输入购买商品的对应编号进行商品选购,当输入“0"时结束选购,并输出商品的数量和总价。
任
务
任务探究
探
究
新知讲解
一、分析问题
(1)观察右表,编号是一系列有顺序的数字,如果我们能让商品和价格也按编号的顺序排列并且保存起来,就可以通过输入编号来选购商品了。
(2)消费者可以不断地加购商品,这是一个重复执行的过程,因此我们需要使用一种新的程序结构来实现这个过程。
自动售货机一般是通过数字按键输入商品的编号来选择需要购买的商品,李鸣的设想是输入编号后按回车键确定,然后可以继续输入编号购买下一个商品。当输入数字0则表示结束选购,此时机器在屏幕上显示商品的数量和总金额。
商品编号 商品名称 商品价格/元
1 矿泉水 2
2 牛奶 4
3 橙汁 3
4 面包 3
5 蛋糕 4
新知讲解
二、循环结构描述算法
有些步骤是可以反复执行的,这种重复执行的结构我们称为循环结构。
算
法
新知讲解
(1)用户输入商品编号;
(2)如果输入的编号不为0则进入第3步,否则跳到第4步;
(3)输出当前选购的商品价格和名称,计算选购商品的数量和总价,等
待用户输入下一件商品的编号;
(4)结束购物,输出选购的商品总数和总价。
自动售货机算法
自然语言
流程图
开始
输入商品号
结束
计算选购商品的数量和总价
用户输入编号
False
商品编号不为0
输出当前选购商
品的价格和名称
新知讲解
格式:
<列表名>=[ <元素1>, <元素2>, ..]
三、应用列表
前面提到,希望可以将商品名称和价格按指定的顺序保存起来。在Python中,我们可以使用列表来保存一系列的数据,使其具有一定的顺序关系。
1.创建列表
列表中的数据可以是任意类型。列表为每个元素都设立了一个索引号(序号), 第一个元素序号为0。
例如: name=["小王",”小明","小红"]
number=[1,2,3,4,5]
score=[88.5,95,60,"缺考"]
新知讲解
三、应用列表
操作或命令 功能
print列表名 输出列表所有元素
print列表名[n] 输出列表中的序号为n的元素
len(列表名) 列表中元素的数量
2.列表的操作
列表操作或命令功能表
课堂实践
(1)创建商品列表和价格列表,名称分别为goods和price,列表数据参考表格。
(2)设计只选购一个商品的程序,提示“请输入您要购买的商品编号: 1-矿泉水; 2-牛奶; 3-橙汁; 4-面包; 5-蛋糕:”,当输入编号后则输出对应商品的名称和价格。执行效果如图2-15所示。
做
做
一
新知讲解
四、while循环语句
1.while循环语句
格式:
while<条件表达式> :
循环体
流程图
条件表达式
真
语句块1
False
循环外语句
使用while语句实现重复执行的效果,即在某个条件成立的情况下,循环执行某段程序(即循环体)。
新知讲解
四、while循环语句
说
明
当while后面的条件表达式结果为True,
则执行while语句下面缩进的循环体,
执行完循环体后,又回到语句while (条件),
检测(条件)是否还成立,
如果(条件)不成立,结束循环。
1.while循环语句
新知讲解
四、while循环语句
以上程序中的变量i实际上起了一个计数器的作用,它的初始值为0,每循环1次就加1,因此i的值是逐渐增大的。当i增加到5时循环条件i<5不成立,循环结束。
与分支结构的else语句的功能类似,while 语句也可以使用else,在循
环条件为false时执行else下面缩进的语句块。例如:
1.while循环语句
新知讲解
四、while循环语句
while True
while 1>0
while 1==1
有时我们需要程序可以无限循环,则可以将while后面的条件直接写成:
True或其他结果永远为True的表达式。例如:
1.while循环语句
以上命令中1>0,1==1 这两个表达式的结果都为True,因此效果等同于while True。
课堂实践
编写让自动售货机可以选购多个商品的程序。
哪些语句需要反复执行 先不考虑循环停止的条件,我们可以利用无限
循环语句来实现选购多个商品的功能。参考程序如下:
做
做
一
goods = ["矿泉水", "牛奶", "橙汁", "面包", "蛋糕"]
price = [2, 4, 3, 3, 4]
while True:
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕:"))
print("您选择了", price[n-1], "元的", goods[n-1])
新知讲解
四、while循环语句
2.设置循环条件
完成以上程序并运行,你会发现程序会直不断地重复执行, 要求输入商品编号。如果我们希望输入0来表示选购商品结束,那么要如何实现
使用break命令来退出或者中断循环。
在while后面的条件我们可以设置为“n!=0", 表示如果“n不等于0"这个条件成立则显示选购的商品,继续等待输人编号;如果“n不等于0”这个条件不成立则结束循环,流程图如图。
流程图
输入商品号
用户输入编号
False
n!=0
输出当前选购商
品的价格和名称
课堂实践
根据以上分析,我们可以写出以下程序,
做
做
一
goods = ["矿泉水", "牛奶", "橙汁", "面包", "蛋糕"]
price = [2, 4, 3, 3, 4]
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕;输入0结束选购:"))
while n != 0:
print("您选择了", price[n-1], "元的", goods[n-1])
n = int(input("请继续输入编号:"))
课堂实践
修改程序,在结束选购时显示已选购商品的数量和总价。
考
考
你
goods = ["矿泉水", "牛奶", "橙汁", "面包", "蛋糕"]
price = [2, 4, 3, 3, 4]
s = 0
t = 0
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕;输入0结束选购:"))
while n != 0:
s = s+1
t = t+price[n-1]
print("您选择了", price[n-1], "元的", goods[n-1])
n = int(input("请继续输入编号:"))
else:
print("您一共选购了", s, "件商品,需要支付", t, "元")
课堂总结
总
结
第四节 自动售货机
一、分析问题
二、循环结构描述算法
三、应用列表
四、while循环语句
作业布置
1.以下Python程序段运行后输出的结果为( )。
m= 1
sum=0
while m<10:
sum=sum+ 1
m=m+2
print(sum)
A.5 B.4 C.6 D.25
√
https://www.21cnjy.com/help/help_extract.php程序1
goods = ["矿泉水","牛奶","橙汁","面包","蛋糕"]
price = [2,4,3,3,4]
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕:"))
print("您选择了", price[n-1],"元的",goods[n-1])
程序2
i = 0
while i < 5:
i = i+1
print("ok")
程序3
i=0
while i<5:
i=i+1
print("ok")
else:
print("循环次数为",i,"次")
程序4
goods = ["矿泉水", "牛奶", "橙汁", "面包", "蛋糕"]
price = [2, 4, 3, 3, 4]
while True:
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕:"))
print("您选择了", price[n-1], "元的", goods[n-1])
程序5
goods = ["矿泉水", "牛奶", "橙汁", "面包", "蛋糕"]
price = [2, 4, 3, 3, 4]
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕;输入0结束选购:"))
while n != 0:
print("您选择了", price[n-1], "元的", goods[n-1])
n = int(input("请继续输入编号:"))
程序6
goods = ["矿泉水", "牛奶", "橙汁", "面包", "蛋糕"]
price = [2, 4, 3, 3, 4]
s = 0
t = 0
n = int(input("请输入您要购买的商品编号:1-矿泉水;2-牛奶;3-橙汁;4-面包;5-蛋糕;输入0结束选购:"))
while n != 0:
s = s+1
t = t+price[n-1]
print("您选择了", price[n-1], "元的", goods[n-1])
n = int(input("请继续输入编号:"))
else:
print("您一共选购了", s, "件商品,需要支付", t, "元")中小学教育资源及组卷应用平台
粤教版B信息技术八年级下册教学设计
课题 第四节 自动售货机 单元 第二单元 学科 信息技术 年级 八
学习目标 1. 知识与技能 (1)懂得列出多项数据项 (2)掌握while循环语句的使用(3)掌握从多项数据中选择指定的数据项2.过程与方法: (1)通过编写程序掌握循环结构算法的过程。 (2)通过完成任务学会使用列表。 3. 情感态度与价值观: (1) 激发学生学习计算机程序的热情。 (2) 激发学生对计算机编程项目的创想。
重点 while循环语句,列表使用
难点 while循环语句,列表使用
教学过程
教学环节 教师活动 学生活动 设计意图
导入新课 炎热的夏天,刚打完球的李鸣与小伙伴们到学校的自动售货机买矿泉水,但是他们发现这台售货机每次只能买一瓶水,很不方便。李鸣想对自动售货机的程序进行改良,用户可以重复输入多个购买的商品号,直到选择完毕才结算,实现一次购买多个商品。(1)如何列出多项数据项 (2)如何在程序中描述重复执行的操作 (3)如何从多项数据中选择指定的数据项 学生思考回答 从情境导入,激发学生学习的兴趣,引出问题思考。
任务探究 了解自动售货机的操作方法,设计一个自动售货机程序:利用计算机键盘模拟售货机的操作按键,可多次输入购买商品的对应编号进行商品选购,当输入“0"时结束选购,并输出商品的数量和总价。 学生思考 以任务作为驱动,让学生有学习的动力。
讲授新课 分析问题自动售货机一般是通过数字按键输入商品的编号来选择需要购买的商品,李鸣的设想是输入编号后按回车键确定,然后可以继续输入编号购买下一个商品。当输入数字0则表示结束选购,此时机器在屏幕上显示商品的数量和总金额。(1)观察右表,编号是一系列有顺序的数字,如果我们能让商品和价格也按编号的顺序排列并且保存起来,就可以通过输入编号来选购商品了。(2)消费者可以不断地加购商品,这是一个重复执行的过程,因此我们需要使用一种新的程序结构来实现这个过程。循环结构描述算法 有些步骤是可以反复执行的,这种重复执行的结构我们称为循环结构。自然语言(1)用户输入商品编号;(2)如果输入的编号不为0则进入第3步,否则跳到第4步;(3)输出当前选购的商品价格和名称,计算选购商品的数量和总价,等待用户输入下一件商品的编号;(4)结束购物,输出选购的商品总数和总价。流程图三、应用列表前面提到,希望可以将商品名称和价格按指定的顺序保存起来。在Python中,我们可以使用列表来保存一系列的数据,使其具有一定的顺序关系。1.创建列表格式:<列表名>=[ <元素1>, <元素2>, ..]2.列表的操作print列表名 输出列表所有元素print列表名[n] 输出列表中的序号为n的元素len(列表名) 列表中元素的数量四、while循环语句1.while循环语句使用while语句实现重复执行的效果,即在某个条件成立的情况下,循环执行某段程序(即循环体)。格式:while<条件表达式> :循环体当while后面的条件表达式结果为True,则执行while语句下面缩进的循环体,执行完循环体后,又回到语句while (条件),检测(条件)是否还成立,如果(条件)不成立,结束循环。2.设置循环条件使用break命令来退出或者中断循环。在while后面的条件我们可以设置为“n!=0", 表示如果“n不等于0"这个条件成立则显示选购的商品,继续等待输入编号;如果“n不等于0”这个条件不成立则结束循环,流程图如图。 学生听讲学生思考回答 通过讲授让学生了解本节课的重难点。
自主学习 编写程序,实现功能:当输入年龄和15秒脉搏时,自动计算运动后的心率,并通过判断实际运动心率是否在运动心率操作范围内,从而以此为依据判断运动量是否合适。 学生讨论完成任务 学生体验到了编程的快乐,更加喜欢编程。
课堂小结 第三节 智能运动助手一、分析问题二、循环结构描述算法 三、应用列表四、while循环语句
板书 第三节 智能运动助手一、分析问题二、循环结构描述算法 三、应用列表四、while循环语句
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
HYPERLINK "http://www.21cnjy.com/" 21世纪教育网(www.21cnjy.com)