第9课 列表存储 课件+教案

文档属性

名称 第9课 列表存储 课件+教案
格式 zip
文件大小 2.8MB
资源类型 试卷
版本资源 浙摄影版
科目 信息技术(信息科技)
更新时间 2022-04-21 09:12:30

文档简介

中小学教育资源及组卷应用平台
第9课 列表存储
教材分析:
Scratch中的列表相当于其他程序设计语言中的数组,可以将其看成一系列变量的集合,可存储大量数据。本课通过建立“问题”“答案”两个列表,读取、比较两个列表中的数据,以实现随机出题为例,介绍了列表的概念和列表的基本使用方法。
教材首先介绍了列表的概念和列表的组成,帮助学生建立对列表的初步认识。教材先提供使用列表的一般方法,再描述算法、编写程序,注重方法的习得和思维的训练。为了增加教材的可读性,教材用图示清晰地展示了建立列表、输入列表数据的过程。
编写脚本部分,给变量“i”赋随机值,并用变量“i”读取列表的第“i”想内容,比较抽象,学生学习时有一定的难度,因此教材编排了“试一试”内容,让学生在多次的试验与观察中体会随机数在该程序中的作用。
预设教学目标
1. 理解列表概念,掌握列表数据的输入、读取、比较等基本操作。
2. 利用列表改进“知识问答”程序的算法,修改脚本实现随机出题功能。
预设教学重难点:
重点:理解列表概念,学会使用列表的一般方法。
难点:理解随机出题的算法。
预设课时安排:
1课时
预设教学准备:
Scratch程序、PPT、Scatch范例、学生素材等。
预设教学过程:
一、提出新挑战,揭示课题
1.课件出示:“猜谜语”的问答小程序完成了,计分功能也实现了,可是一直都是这几个 谜语按顺序出现,这也太没劲了。
同学们,你们有什么好想法吗?
学生回答。
预设提出新的挑战:实现随机出题。
2.是呀,要是提出来的谜语是随机的,那这个小程序一定更有意思。
可是怎么来实现随机出题呢?别着急,我们先一起来玩一个小游戏。
3.老师这里有一张你们班的学生名单表,但是姓名并不是按照学号排列的,被打乱了顺序的,每个人的后面还有一个相应的动作,你们随机报出一个数字,然后我们看看对应的人是谁,他要做什么动作好不好?
请一位学生报出数字,教师打开一个Excel表格,表格里有班级的学生名单,以及对应的事件。
师生共同玩一玩。
4.请思考:随机报的这个数字有什么要求?可以是小于等于0吗?可以很大很大吗
学生回答。
那这个随机数的范围跟什么有关?(班级人数)
如果我们用程序来实现随机取数,那么就需要借助 这块积木了,所以它的取值范围应该是“1和班级人数”之间。
5. 现在请Scratch中的 来帮忙,产生一个随机的序号,再玩一次这个游戏吧。
为了让大家看清楚这个随机的序号,我们可以在Scratch中建立一个变量“序号” ,并且将这个随机序号的范围设定为1到班级人数之间,然后对照表格的姓名,让ta做相应的动作。
教师打开Scratch程序,输入班级人数,产生一个随机序号,请该学生根据表格所示,做出相应的动作。
5.同学们,你们发现了没有,刚才我们的小游戏中用到的就是随机出题的思想,它是借助什么来实现的呢?现在要实现知识问答的随机换题,你会了吗?我们可以请谁来帮忙呢?
一个是取随机数,一个是表格对吗?在Scratch中也有表格,它的名字叫“列表”,只不过,这个列表是一个多行一列的表格。
6.揭示课题
今天这节课我们就一起来学习第9课:列表存储,来实现问答程序的随机出题想法。
二、认识列表
1.那到底什么是列表呢?我们先来认识一下它吧。
列表与变量一样可以存储数值或字符数据。
单个变量一次只能存储一个数据,而单个列表可存储多项数据。可以把列表看成是多行一列的表格。
列表由列表名和列表值组成。
2.课件出示列表,说一说列表的组成:编号、列表名、列表长度、列表值。
列表的访问:一般情况下,可以采用列表名和编号组合的方式访问某项列表值。
根据上面这句话,如果想提“72小时——打一字”这个问题,应该如何来访问这个列表?
“问题”列表的第2项。(列表名:问题,列表的编号:第2项)
课件出示:观察“问题”列表的值,如果想将“询问72小时——打一字并等待”改成使用访问列表的方式来,应该改成什么?(询问问题列表的第2项)
如果想改变询问的问题,应该改变哪里的数据?(改变编号就可以了)
3.出示列表和变量的对比表格,进一步理解列表。
三、应用列表
1.要使用列表,必须先新建列表,再根据需求管理列表数据,如增加、减少、显示、运算、比较等。
新建列表在哪里新建呢?找一找。
2. 新建的列表是空的,列表值需要我们输入,那怎么输入列表的各项数据呢?
方法一:通过手动输入列表数据
方法二:通过编写脚本输入列表数据
3.为了实现随机出题,首先需要一个“问题”列表来存储问的问题,还需要一个 “答案”列表来存储相应的答案。存储问题与答案数据应该一一对应。
4.出示任务一:
新建列表,并输入列表值。
① 新建两个列表:“问题”、“答案”
② 分别将提问的问题内容和相应的答案输入到两个列表中
温馨提醒:使用脚本输入的同学可以这样才操作:
学生操作,教师巡视,并做个别指导。
反馈共性问题:使用脚本输入,注意最开始要删除列表的全部项目。
5. 列表已经有了,接下来要实现随机出题了,那如何来实现呢?
首先需要结束取随机数的积木,那么它的取值范围是多少呢?
出示8个问题的列表,说一说。(1-8,因为这个列表的长度是8)
再出示11个问题的列表,说一说。(1-11,因为这个列表的长度是11)
那么我们就可以找到一个共性了,取值范围应该是1-列表长度之间。找一找有关列表的积木,哪一块表示的列表的长度呢?(列表的项目数)是的,现在只要在1-列表的项目数之间取一个随机数,那么对应的问题就能呈现出来了。
6.所有的问题都一一分析之后,我们再来看看具体的算法描述吧。
出示上一节课的算法流程图,想一想哪些地方需要改一改?
询问的问题要到“问题”列表里找
答案需要到“答案”列表里找
课件出示本节课对应的流程图。
具体的脚本怎么实现呢?
不能再询问具体的内容了,应该换成问题列表里的内容,所以应该是询问问题列表的第编号项内容,同样答案也应该是答案列表的第编号项了。“编号”是固定的吗?那变量“编号”应该设为什么呢?是的,只要将变量“编号”设置成随机数就可以了。
7.出示任务二:
建立一个变量,实现随机出题。
① 新建一个变量,如“编号”
② 为变量“编号”设置一个随机生成的列表编号
③实现随机出题
④完成后,同学之间玩一玩,看看还有没有需要改进的地方?
8.列表的显示与隐藏
教你一招:可以通过编写脚本或者取消指令面板中列表前的√,将列表隐藏起来。
9.作品展示
展示2-3位学生的作品。
10.拓展练习(机动安排)
帮助老师制作一个“随机挑人”的程序,用列表存储同学的姓名,随机显示被挑中的同学姓名,用于上课回答问题时的随机选人。
四、课堂小结
【课后反思】
21世纪教育网 www.21cnjy.com 精品试卷·第 2 页 (共 2 页)
21世纪教育网(www.21cnjy.com)序号 姓名 序号 动作
1 1 做鬼脸
2 2 大笑一声
3 3 招招手
4 4 说:老师好
5 5 蹲下
6 6 敬队礼
7 7 和同桌握手
8 8 双脚跳一下
9 9 两手叉腰
10 10 拍手
11 11 跺脚两下
12 12 做捧脸状
13 13 比个耶
14 14 扭一下腰
15 15 单脚跳一下
16 16 青蛙跳两下
17 17 高抬腿两下
18 18 比个爱心
19 19 马上起立
20 20 竖起大拇指
21 21 蹲下
22 22 单脚跳一下
23 23 敬队礼
24 24 做捧脸状
25 25 做鬼脸
26 26 高抬腿两下
27 27 比个爱心
28 28 两手叉腰
29 29 说:老师好
30 30 蹲下
31 31 单脚跳一下
32 32 比个耶
33 33 拍手
34 34 敬队礼
35 35 竖起大拇指
36 36 高抬腿两下
37 37 做鬼脸
38 38 比个爱心
39 39 单脚跳一下
40 40 两手叉腰
41 41 扭一下腰
42 42 说:老师好
43 43 比个耶
44 44 做捧脸状
45 45 竖起大拇指
46 46 两手叉腰(共23张PPT)
猜谜语的问答小
程序完成了,计分功能也实现了,可是一直都是这几个
谜语按顺序出现,这也太
没劲了
同学们,你们有什么好想法吗?
要是计算机询问的
谜语是随机的,那这个
问答小程序一定更有意思。
可是,要怎么实现呢?
别着急,我们先来玩一个小游戏
吧。
老师这里有一张你们班的学生名单表,但是姓名并不是按照学号排列的,被打乱了顺序,每个人的后面还有一个相应的动作,请一位同学随机报出一个数字,然后我们看看对应的人是谁,他要做什么动作好不好?
想一想,随机报的
这个数字有什么要求?可以
是小于等于0吗?可以很大
很大吗
那这个随机数的范围跟什么有关?
运算


现在请Scratch中的 来帮忙,产生一个随机的序号,再玩一次这个游戏吧。
为了让大家看清楚这个随机的序号,我们可以在Scratch中建立一个变量“序号” ,并且将这个随机序号的范围设定为1到班级人数之间,然后对照表格的姓名,让ta做相应的动作。
可以尝试使用“列表”来管理问
题哦。
同学们,现在要
实现知识问答的随机换题,
你会了吗?我们可以请谁来
帮忙呢?
浙摄影版小学信息技术五年级下册
执教者:长兴县第二实验小学 张文娟
列表与变量一样可以存储数值或字符数据。
单个变量一次只能存储一个数据,而单个列表可存储多项数据。
变量
列表
……
列表由列表名和列表值组成。
可以把列表看成是多行一列的表格。
一般情况下,可以采用列表名和编号组合的方式访问某项列表值。
根据上面这句话,如果想提“72小时——打一字”这个问题,应该如何来访问这个列表?
编号
列表长度
列表名
列表值
如果想改变询问的问题,应该改变哪里的数据?
存储数值

字符数据
1个
多个
变量名+变量值
列表名+列表值
变量名
列表名+编号
要使用列表,必须先新建列表,再根据需求管理列表数据,如增加、减少、显示、运算、比较等。
变量
新建列表在哪里新建呢?
新建的列表是空的,列表值需要我们输入,那怎么输入列表的各项数据呢?
方法一
手动输入
方法二
脚本输入
为了实现随机出题,首先需要一个“问题”列表来存储问的问题,还需要一个 “答案”列表来存储相应的答案。
存储问题与答案数据应该一一对应。
① 新建两个列表:“问题”、“答案”
② 分别将提问的问题内容和相应的答案输入到两个列表中
温馨提醒:使用脚本输入的同学
可以这样才操作:
列表已经有了,接下来要实现随机出题了,那如何来实现呢?
取值范围是多少?
为什么?




1
8
1
11
1

开始
“回答”=“答案”?
程序初始化设置变量为0
用户输入“回答”
输出“答对”提示

结束
“询问”问题

变量“得分“增加
输出“得分”
输出“答错”提示
变量“得分“减少
“问题”列表
“答案”列表
开始
“回答”=“答案”列表的第“编号”项?
……
用户输入“回答”
输出“答对”提示

结束

变量“得分“增加
输出“得分”
输出“答错”提示
变量“得分“减少
设置变量“编号”的值为1~“问题”列表长度之间的随机数
询问第“编号”项“问题”
① 新建一个变量,如“编号”
② 为变量“编号”设置一个随机生成的列表编号
③实现随机出题
④完成后,同学之间玩一玩,看看还有没有需要改进的地方?
可以通过编写脚本或者取消指令面板中列表前的 ,将列表隐藏起来。
帮助老师制作一个“随机挑人”的程序,用列表存储同学的姓名,随机显示被挑中的同学姓名,用于上课回答问题时的随机选人。
列表存储
认识列表
应用列表
列表组成
列表作用
列表访问方式
新建列表
列表值的输入
列表的显示、访问等