第15课 幸运大转盘 演示

童老师 2年前 2293 次查看 0 次讨论


学习目标
1. 学会使用随机数相关指令模块; 2. 理解条件嵌套;二叉树; 3. 学会使用“方向”变量。

绘制转盘

本课我们制作一个幸运大转盘抽奖小游戏,其中会用到随机数功能。

在“运算”分类中,Scratch提供了一个 “在1和10之间取随机数”指令模块, 1和10两个参数定义了随机数的取值范围,运行程序后,可能取到的随机数范围是{1,2,3…10};如果其中一个参数为小数,例如“在1.0和10之间取随机数”,那么程序执行后取到的是一个有小数的随机数。在幸运大转盘的程序中,转盘转动的次数是一个1到300之间的随机数。

这里我们也要先建立一个转盘角色,将鼠标指针移动到角色区右下角的小猫头按钮上,选择像笔一样的图标来“绘制”新角色。

在模块区选择“造型”选项卡后,在右侧的区域绘制一个圆形的转盘,这个转盘我们稍微简化一些,只分为4个区域,4个区域分别用不同的颜色填充。

15

绘制时要注意圆的中点位置。色块的颜色使用“填充”工具即可填充。

编写程序

转盘角色绘制完成之后,我们再来实现随机转动的效果,我们要实现的功能是点击绿旗后,转盘会随机地转动一个角度。在“代码”选项卡中,需要添加“事件”分类中的“当绿旗被点击”指令模块、“控制”分类中的“重复执行10次”指令模块、“动作”分类中的“右转15度”指令模块,以及最重要的“运算”分类中的“在1和10之间取随机数”指令模块,每次转动的角度是15°,而随机数的范围是1~300。

当我们点击绿旗时,转盘就会开始绕中心旋转,然后随机地停在一个位置上。

然后我们需要判断转盘转动后的中奖情况,也就是判断转盘的角度或方向。生活中的大转盘都会有一个指针,当转盘停止旋转时,指针所指的区域就是中奖内容,所以这里我们添加一个用来指示的角色(箭头“Arrow1”)。另外,为了直观地看到转盘目前的旋转角度,我们可以在“运动”分类中“方向”变量前的选择框内打钩,这样就能看到转盘每次旋转的角度了。

15

目前程序还未更改,我们点击绿旗,让转盘转动几次。

最后,我们来完善程序。因为我们这个转盘比较特殊,只分了4个区域,所以相当于每90°划分一个区域,我们可以以0°为一个分界线,对两边的角度分开判断,这样就能对应到这4个区域。当转盘停止旋转时,直接根据这4个区域来判断,我们可以直接让转盘告诉我们中奖情况,这里有3种中奖情况,分别是抽中了大冰箱、大彩电、苹果六,还有未中奖。

这个程序中,我们应用的都是“如果…那么…否则…”指令模块,即每次判断都有两个分支。这种结构在程序中有一个专有的名词叫二叉树,这是因为这样的结构画出来之后像一棵树的样子。

程序完成后,我们就可以来试试了。其中红色对应抽中了大冰箱,黄色对应抽中了苹果六,绿色对应抽中了大彩电,蓝色对应未中奖。

15

扩展练习

1. 为项目加入音效和配音。

2. 为项目加入更多抽奖方案。


2

籍山中心小学及城西校区同学使用博文账号登录!