和孩子一起学编程:用Scratch玩Minecraft我的世界
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.4 Scratch简单入门实例

本节通过8个简单的入门实例带领大家学习Scratch编程的基本流程和一些基本的知识点。

实例1-1:小猫动起来

我们的第1个小程序就是使舞台区的小猫动起来,使其能够向前移动100步的距离。通过这个程序,大家可以熟悉Scratch的界面和最基础的编程操作。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:定义小猫运动

在“运动”模块里选择,将其拖到右侧的脚本区域,并且吸附在下方。然后将椭圆方框内的数值“10”改为“100”。

此时脚本区的程序如图1-12所示。

图1-12

步骤三:运行程序

在舞台区的左上角单击绿色旗帜,如图1-13所示,程序开始运行,小猫向右运动100步,移动完毕的图形如图1-14所示。继续单击绿色旗帜,小猫会继续向右移动100步,当小猫超过右侧边界时,便不能再移动了。

图1-13

图1-14

步骤四:用鼠标调整小猫的位置

在舞台区用鼠标左键单击小猫图形,按住左键的同时移动鼠标,将小猫调整至需要的位置。

步骤五:添加碰到边缘反弹的指令

(1)在“运动”模块里选择,将其拖至右侧的脚本区并吸附在下方。

(2)在“运动”模块里选择,将其拖至右侧的脚本区,并吸附在下方。

步骤六:再次运行程序

单击舞台区的绿旗运行程序,小猫向右运动,碰到边缘后便会被反弹回来。不断单击绿旗,重复执行程序,会发现小猫在左右边缘之间来回移动,每次碰到边缘都会反弹回来。

实例1-2:小猫的角色造型

本例通过小猫的造型改变、文本输出及发出声音,使大家熟悉“角色造型”、“外观”模块和“声音”模块的基本用法。小猫不仅可以左右移动,还可以改变造型,在舞台区显示出一定的文本信息,也可以让其发出“喵”的声音。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:改变小猫造型

在“外观”模块里选择,将其拖到右侧的脚本区域,并吸附在下方。该语句的作用是将小猫的形状改变为其造型库里的下一个造型。

关于小猫的造型,大家可以打开左侧控制区“造型”选项页,如图1-15所示。可以看出,小猫造型库中只有两个不同的造型。

图1-15

步骤三:小猫打招呼

将控制区的选项页改回“代码”,在“外观”模块里选择,将其拖到右侧的脚本区域,并吸附在下方,将椭圆方框内的文本改为“大家好!我是可爱的小猫咪!”。

步骤四:小猫发出声音

在“声音”模块里选择,将其拖至右侧的脚本区并吸附在下方。

此时程序如图1-16所示。

步骤五:运行程序

在舞台窗口的左上角单击绿色旗帜,程序开始运行,如图1-17所示,小猫改变了造型,并显示出“大家好!我是可爱的小猫咪!”的文本信息,而且发出“喵”的声音。

图1-16

图1-17

实例1-3:实现跳舞

当一个角色有很多造型,而且每个造型都代表不同的动作时,我们将这些造型以很短的时间间隔连续显示,就可以实现连续的舞蹈动作。本例采用循环命令来连续显示一个人物角色的不同造型,配合音乐的播放,完成一个人物舞蹈的程序,使大家获得循环可以连续执行某条语句的感性认识。

步骤一:更换角色

(1)在右下角“角色区”单击小猫角色右上角的删除按钮,然后单击添加角色按钮,如图1-18所示。

(2)在“角色”对话框里选择角色“Anina Dance”,如图1-19所示。在左侧控制区的“造型”选项页里可以查看该角色的造型,该角色共有13个不同的造型。

图1-18

图1-19

步骤二:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤三:播放舞蹈音乐

在“声音”模块里选择,将其拖至右侧的脚本区并吸附在下方。

步骤四:定义循环

循环就是重复执行某些语句。在“控制”模块里选择,将其拖至右侧的脚本区并吸附在下方。然后将执行次数由10次改为100次。

步骤五:更换造型

在“外观”模块里选择,将其拖到右侧的脚本区域,并吸附在内部。

步骤六:定义时间间隔

我们为每个造型定义0.5秒的时间间隔。在“控制”模块里选择,将其拖至右侧的脚本区域,并吸附在内部的下方。然后将时间由1秒改为0.5秒。

步骤七:完整的程序与运行结果

(1)完整的程序如图1-20所示。

图1-20

(2)单击舞台区的绿旗运行程序,Anina便在舞台区跳起舞来,如图1-21所示。

图1-21

实例1-4:绘制正方形

“画笔”模块属于Scratch 3.0的一个扩展模块,用其可以画出复杂且漂亮的图案。本例采用该模块绘制出一个最简单的正方形图案。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:加载画笔模块

如图1-22所示,在程序界面的左下角单击“添加拓展”按钮,弹出的对话框如图1-23所示。选择“画笔”模块。此时左侧的“模块”列表里出现了“画笔”模块,并在其右侧显示出该模块的所有积木块,如图1-24所示。

图1-22

图1-23

图1-24

步骤三:设置画笔颜色

在“画笔”模块里选择,将其拖到右侧的脚本区域,并吸附在下方。然后将颜色改为红色。

步骤四:定义落笔

在“画笔”模块里选择,将其拖到右侧的脚本区域,并吸附在下方。

步骤五:定义正方形绘制循环

绘制四边形的循环是:先绘制一条线段,然后将小猫右转90度,接着绘制下一条线段并右转90度,如此重复语句,共执行4次。

(1)在“控制”模块里选择,将其拖至右侧的脚本区并吸附在下方。然后将执行次数由10次改为4次。

(2)在“运动”模块里选择,将其拖到右侧的脚本区域,并吸附在内部。然后将移动步数改为“100”。

(3)在“运动”模块里选择,将其拖至右侧的脚本区域,并吸附在内部的下方。然后将角度由15度改为90度。

步骤六:完整的程序与运行结果

(1)完整的程序如图1-25所示。

(2)单击舞台区绿旗运行程序,结果如图1-26所示。

图1-25

图1-26

实例1-5:变量的基本使用

“变量”(或者称为“参数”)是程序语言中的重要概念,我们把“变量”应用于经常需要改变数值的场合,比如在实例1-4中,如果要绘制不同边长的正方形,就需要把“边长”定义为一个变量,然后通过对变量值进行简单的修改,就可以生成不同大小的正方形。

本例将多边形的边长和边数都定义为变量,采用循环完成“边长”和“边数”都可变的多边形的绘制。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:加载画笔模块

和实例1-4一样加载“画笔”模块。

步骤三:定义变量

(1)打开“变量”模块,单击“建立一个变量”按钮,如图1-27所示,弹出“新建变量”对话框,输入变量名为“边长”,如图1-28所示,单击“确定”按钮完成定义。

图1-27

图1-28

(2)按照同样的步骤建立第2个变量,命名为“边数”。

(3)两个变量定义完毕后,在“变量”模块列出了“边长”和“边数”两个变量,而且在舞台区的左上角也出现了这两个变量,并显示出其数值的大小,如图1-29所示。

图1-29

步骤四:定义变量值

(1)在“变量”模块里选择两遍,将其拖至右侧的脚本区,并吸附在下方。

(2)将第1个中“我的变量”改为“边长”,在后面的椭圆方框内输入数值100。

(3)将第2个中“我的变量”改为“边数”,在后面的椭圆方框内输入数值5。

步骤五:设置画笔颜色

在“画笔”模块里选择,将其拖到右侧的脚本区域,并吸附在“边数”的变量值定义语句的下方。然后将颜色改为红色。

步骤六:定义落笔

在“画笔”模块里选择,将其拖到右侧的脚本区域,并吸附在下方。

步骤七:定义多边形绘制循环

对于多边形而言,多边形的边长等于变量“边长”,多边形的边数等于变量“边数”,线段右转的角度为360/边数。循环共执行次数等于“边数”。

(1)在“控制”模块里选择,将其拖至右侧的脚本区,并吸附在下方。在“变量”模块里选择“边数”,将其填入表示循环次数的椭圆方框内。

(2)在“运动”模块里选择,将其拖到右侧的脚本区域,并吸附在内部。在“变量”模块里选择“边长”,将其填入表示移动步数的椭圆方框内。

(3)在“运动”模块里选择,将其拖至右侧的脚本区域,并吸附在内部的下方。在“运算”模块下选择,将其放置到的椭圆方框内。在的第1个椭圆方框内输入数值360,在“变量”里选择“边数”,将其填入的第2个椭圆方框内。

步骤八:完整的程序与运行结果

(1)完整的程序如图1-30所示。

(2)单击舞台区的绿旗运行程序,运行结果如图1-31所示。

图1-30

图1-31

实例1-6:循环的种类

在Scratch中,循环可以分为三类:(1)指定次数的循环,积木块为,表示按指定的次数重复执行某些语句,在前面的实例中已经多次练习过;(2)无限次数的循环,积木块为,表示一直重复执行某些语句;(3)满足某个条件就结束的循环,积木块为,其中六边形括号里表示一个条件,在这个条件满足之前,循环一直重复进行,一旦这个条件满足,循环就结束。

本例练习无限次数循环和满足条件就停止的循环的使用。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:添加无限次数循环

在“控制”模块里选择,将其拖至右侧脚本区,并吸附在的下方。

步骤三:定义时间延迟语句

在“控制”模块里选择,将其拖至右侧脚本区,并放置在内部。然后将时间由1秒改为10秒。

步骤四:定义时间显示语句

(1)在“外观”模块里选择,将其拖至右侧脚本区,放置在内部,并吸附在的下方。

(2)组合语句输出当前的时间信息:

①在“运算”模块里选择,将其放置到的椭圆方框内。

②继续在“运算”模块里选择,将其放置到第1个的第2个椭圆方框内,此时语句为

③继续在“运算”模块里选择两遍,将其分别放到第2个的两个椭圆方框内,此时语句为

④在上面组合好的语句内,5个椭圆方框的编号由左向右依次为1~5。在第1个椭圆方框内,输入字符“现在的时间是:”;在“侦测”模块中选择,将其填入第2个椭圆方框内,然后将“年”改为“时”;在第3个椭圆方框内,输入字符“点”;在“侦测”模块中选择,将其填入第4个椭圆方框内,然后将“年”改为“分”;在第5个椭圆方框内输入字符“分”。

组合完成后,该条语句如图1-32所示。

图1-32

步骤五:完整的程序及运行结果

(1)完整的程序如图1-33所示。

图1-33

(2)单击绿旗运行程序,结果如图1-34所示。程序开始运行后,中间脚本区中所有代码的边框都呈黄色的状态,表示这些代码在运行。每隔10秒,就在右侧的舞台区显示出当前时刻的时间信息。

图1-34

步骤六:修改程序,改变循环类型

(1)将鼠标光标放在上,把循环里的语句从循环里剥离出来,如图1-35所示。

(2)将鼠标光标放在上,单击鼠标右键将其删除。

图1-35

(3)在“控制”模块里选择,将其拖至右侧脚本区并吸附在下方。

(4)将语句组合放置到循环内部,此时程序如图1-36所示。

图1-36

(5)在“运算”模块里选择,将其拖至右侧脚本区,并放在循环的六边形方框内。

(6)在“侦测”模块中选择,将其填入的第1个椭圆方框内,然后将“年”改为“时”,在的第2个椭圆方框内输入数值“9”。

至此,程序修改完毕。

步骤七:修改后完整的程序及运行结果

(1)完整的程序如图1-37所示。

图1-37

(2)单击绿旗运行程序,运行结果还是先每隔10秒显示时间信息,当时间超过10点(满足条件大于9)时,程序就停止运行。

实例1-7:条件语句

Scratch的条件语句主要有“如果……那么……”和“如果……那么……否则……”两种积木。前者的作用是在单条件下执行单语句:表示当某种条件满足时,执行相应的语句。后者则根据条件选择要执行的语句:表示当某种条件满足时,执行语句1,条件不满足时则执行语句2。

本例对条件语句进行练习,通过循环对1~10的整数是否为偶数进行判断。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:定义循环变量

打开“变量”模块后单击“建立一个变量”按钮,弹出“新建变量”对话框,输入变量名为“循环变量”,单击“确定”按钮完成定义。

步骤三:设置循环变量初始值

在“变量”模块里选择,将其拖至右侧脚本区,并吸附在的下方。将“我的变量”改为“循环变量”,将后面椭圆方框内的数值改为“1”。

步骤四:定义循环

在“控制”模块里选择,将其拖至右侧脚本区,并吸附在的下方。

步骤五:定义条件语句

(1)在“控制”模块里选择,将其拖至右侧脚本区,并吸附在内部。

(2)在“运算”模块里选择,将其拖至右侧脚本区,并放置在的六边形方框内,将“50”改为“0”。

(3)在“运算”模块里选择,将其拖至右侧脚本区,并放置在的第1个椭圆方框内。

(4)在“变量”模块里选择“循环变量”,将其放置在的第1个椭圆方框内,将数值“2”放置在的第2个椭圆方框内。

(5)在“外观”模块里选择两遍,将其拖至右侧的脚本区,分别放置在中“那么”后面和“否则”后面的空白语句内。

(6)在“运算”模块里选择两遍,将其拖至右侧的脚本区,分别放置在两个的椭圆方框内。

(7)对于“那么”后面语句中的:将“变量”模块的“循环变量”填入第1个椭圆方框内,将字符串“是偶数”填入第2个椭圆方框内。

(8)对于“否则”后面语句中的:将“变量”模块的“循环变量”填入第1个椭圆方框内,将字符串“是奇数”填入第2个椭圆方框内。

步骤六:定义循环变量递增

在“变量”模块里选择,将其放置在循环内,并吸附在条件语句的下方。然后将“我的变量”改为“循环变量”。

步骤七:定义时间延迟

在“控制”模块里选择,将其放置在循环内,并吸附在下方。

步骤八:完整的程序及运行结果

(1)完整的程序如图1-38所示。

图1-38

(2)单击舞台区的绿旗运行程序,运行结果如图1-39和图1-40所示,当数值为1、3、5、7、9时,程序显示该数值为奇数;当数值为2、4、6、8、10时,程序显示该数值为偶数。

图1-39

图1-40

实例1-8:随机数的应用

随机数就是在一定范围内随机出现的一个数值,在Scratch 3.0中,用积木块表示,前后两个椭圆方框内的数值表示随机数的取值范围。

本例在1~100的范围内生成x坐标和y坐标的随机数,然后将小猫移动到x坐标和y坐标组成的位置处,并显示出x坐标和y坐标的具体数值。

步骤一:定义程序运行事件

在“事件”模块里选择,将其拖到右侧的脚本区域。

步骤二:创建坐标变量

打开“变量”模块,单击“建立一个变量”按钮,弹出“新建变量”对话框,分别输入变量名为“x”和“y”,单击“确定”按钮完成定义。

步骤三:定义循环

在“控制”模块里选择,将其拖至右侧脚本区,并吸附在的下方。

步骤四:定义坐标变量x和y都为随机数

(1)在“变量”模块里选择两遍,将其拖至右侧脚本区,并吸附在循环内。

(2)将两个中的“我的变量”分别改为“x”和“y”,在“运算”模块里选择,将其填至的椭圆方框内,并将数值“10”改为“100”。

步骤五:设置坐标变量显示

(1)在“外观”模块里选择,将其拖至右侧脚本区,并吸附在第2个后面。

(2)在“运算”模块里选择,将其填至的椭圆方框内;再次在“运算”模块里选择,将其填入第1个的第2个椭圆方框内。

(3)在“变量”模块里选择变量“x”,将其填入第1个的第1个椭圆方框内,在第2个的第1个椭圆方框内填入字符“,”,在“变量”模块里选择变量“y”,将其填入第2个的第2个椭圆方框内。

步骤六:将角色移动到某坐标处

在“运动”模块选择,将其放在循环内,并吸附在的下方。在“变量”模块选择变量“x”和“y”,将其分别放至的两个椭圆方框内。

步骤七:定义时间延

在“控制”模块里选择,将其放置在循环内,并吸附在最下方。

步骤八:完整的程序及运行结果

(1)完整的程序如图1-41所示。

(2)单击舞台区的绿旗运行程序,运行结果如图1-42所示,小猫运动到随机生成的x、y位置处,并显示出该x值和y值。

图1-41

图1-42