内容正文:
五年级下册
随机抽取器
生活中总有我们意想不到的惊喜。欢欢学校要举行幸运抽奖活 动,被抽中的小朋友将成为“幸运之星”。让我们一起来设计随机 抽取小程序吧。
当然!虽然每次都不知道对方要出 什么,但按照规则,他一定会出“石 头”、“剪刀”、“布”中的一个。
欢欢,你玩过“石头剪刀 布”的游戏吗?
任务分析,想一想
“石头剪刀布”游戏、抽签、抽奖都属于随机抽取。想一想, 随机抽取的原理是什么,如何设计随机抽取器。
任务分析,想一想
点击角色列表区的 ,从角色库中选择合适的图片作为新角色,调整角色的大小和位置,并留意角色属性,然后删除角色列表区的默认“角色1”。
技能学习,试一试
1、添加角色
技能学习,试一试
2、添加背景
点击屏幕右下角的 ,从背景库中选择合适的图片作为背景,如图3-4-1所示。
使用“变量”类里的 新建列表,赋予列表合适的名字,如“抽奖名单”;勾选所建列表前面的方框
,可将列表信息显示在舞台上。
趣味编程,做一做
1.建立列表并导入名单
(1)建立列表
在列表内容显示区单击鼠标右键,选择“导入”命令,可以导入txt文件格式的名单,如图3-4-2所示。
(2)导入名单
抽取箱摇一摇的样子,总是让我觉得既有趣又紧张呢!
欢欢,你想设计怎样的抽奖效果呢?
2.增加抽奖效果
鼠标点击角色后,通过改变抽取箱的大小与方向,让抽取箱 “摇一摇”。尝试编写抽奖效果部分的脚本,将其自定义为“抽奖 效果”积木,方便查看和阅读,如图3-4-3所示。
3、进行随机抽取
将产生的随机数赋予 ,实现随机数与抽中学生的对应,最后结合文字和语音将抽奖结果公布出来。
中存储了参与抽奖的总人数,在1和总人数之 间产生一个随机数,便可实现随机抽取。
参照前面的内容将积木组合起来,编写随机抽取器脚本,如图 3-4-4所示。
4.编写并运行脚本
点击运行脚本,看看随机抽取器是否能实现抽奖,如图3-4-5所示。
4.编写并运行脚本
趣味编程,做一做
尝试对脚本进行优化,进行不重复抽取吧。
我发现,当抽取次数变多以后,运气好 的同学可能会被抽中好几次呢!
学习延伸,试一试
增加新的变量和列表,用来存储抽取到的信息。探索和思考表3-4-1的内容。
1.增加变量和列表
在使用积木时,可以勾选变量和列表前的方框, 将变量和列表的信息展示在舞台上,方便程序的测试与修改,如图 3-4-6所示。
1.增加变量和列表
通过在“抽奖名单”列表和“已抽取名单”列表中,转移被抽 中学生的信息,便可实现不重复抽取,抽取原理如图3-4-7所示。
2.存储抽取到的名单
优化随机抽取器脚本,如图3-4-8所示。
2.存储抽取到的名单
运行修改后的脚本,如图 3-4-9所示。
2.存储抽取到的名单
可以增加一个“按钮”角色,当点击“按钮”时,运行相应的积木。
怎么才能让列表恢复初始状态呢?
3.抽奖结束后恢复至初始状态
抽奖结束后,需要将“抽奖名单”列表与“已抽取名单”列表 恢复至初始状态,以方便下一次抽奖。
添加并制作一个“按钮”角色,如图3-4-10所示,并将“按 钮”放到舞台合适的位置。
当点击“按钮”角色时,将“已抽取名单”列表中的学生姓名 重新存回“抽奖名单”列表,并将“已抽取名单”列表进行清空。 尝试编写“按钮”角色脚本,如图3-4-11所示。
运行脚本,分别点 击“抽取箱”角色和“按钮”角色,试试程序能否正确运行,如图 3-4-12所示。
根据随机抽取的原理,
我们设计了随机抽取器。
说一说,
还有没有其他方法
可以实现不重复地随机抽取?
分享时间,说一说
下课啦
$$