Scratch 基础教学|第十一课: Scratch基本组件之运算类功能块详解

网友投稿 2018-09-15 00:10

hi,大家晚上好。上一节课主要给大家介绍了Scratch侦测类功能块可实现的功能及每一个侦测类功能块的具体用途及如何使用。

本节课主要和大家一块了解并学习运算类功能块可实现哪些功能及每一个运算类功能块的具体使用。

本节课的课程目标如下:

- 介绍运算类功能块的作用

- 详细说明运算类中的每个功能块

- 创建一个简单的示例

1

介绍运算类功能块的作用

Scratch 2.0提供了强大的数学计算功能,这将允许用户开发各种操作数值的应用程序。在Scratch 2.0中通过运算符功能块来实现这一功能。

运算符功能块可以执行数学计算、生成随机数字、比较数字之间的关系、对多个字符进行拼接、获取字符的长度、对数字进行四舍五入、执行高阶的数学函数,如获取一个数字的绝对值或平方根等操作。

https://cdn.china-scratch.com/timg/180917/0010333E0-0.jpg

2

介绍运算类中的每个功能块

https://cdn.china-scratch.com/timg/180917/00103362P-1.jpg01

"数字1" + "数字2"

将两个数字相加得到一个结果。

02

"数字1" - "数字2"

用一个数字减去一个数字并得到一个结果。

03

"数字1" * "数字2"

将两个数字相乘并得到一个结果。

04

"数字1" / "数字2"

用一个数字除以另一个数字并得到一个结果。

通过下面示例说明01-04功能块的使用。

首先,创建一个变量,如下图:

https://cdn.china-scratch.com/timg/180917/001033M45-2.jpg

然后,给默认角色添加如下脚本:

https://cdn.china-scratch.com/timg/180917/0010346347-3.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/0010342434-4.jpghttps://cdn.china-scratch.com/timg/180917/0010342H0-5.jpghttps://cdn.china-scratch.com/timg/180917/001034MW-6.jpghttps://cdn.china-scratch.com/timg/180917/00103435C-7.jpghttps://cdn.china-scratch.com/timg/180917/001034B06-8.jpg

05

在"数字1"到"数字2"间随机选一个数

在指定范围内生成一个随机数。

通过下面示例说明此功能块的使用。

首先,创建一个变量,如下图:

https://cdn.china-scratch.com/timg/180917/001033M45-2.jpg

然后,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/0010341125-10.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/0010355413-11.jpghttps://cdn.china-scratch.com/timg/180917/001035A24-12.jpghttps://cdn.china-scratch.com/timg/180917/00103554c-13.jpg

06

"数字1"是否小于"数字2"

根据一个数字是否小于另一个数字,返回一个为真或假的布尔值。

07

"数字1"是否等于"数字2"

根据一个数字是否等于另一个数字,返回一个为真或假的布尔值。

08

"数字1"是否大于"数字2"

根据一个数字是否大于另一个数字,返回一个为真或假的布尔值。

通过下面示例说明此功能块的使用。

首先,创建一个变量,如下图:

https://cdn.china-scratch.com/timg/180917/001033M45-2.jpg

然后,给默认角色添加如下脚本:

https://cdn.china-scratch.com/timg/180917/0010355634-15.jpg

最后,当Count的值大于5时,默认角色"小猫"会停止移动。

https://cdn.china-scratch.com/timg/180917/0010353912-16.jpg

09

"条件1"与"条件2"运算结果是否都为真

根据两个条件的结果是否都为真,返回一个为真或假的布尔值。

通过下面示例说明此功能块的使用。

首先,先创建一个变量,如下图:

https://cdn.china-scratch.com/timg/180917/001033M45-2.jpg

然后,给默认角色添加如下脚本:

https://cdn.china-scratch.com/timg/180917/0010354215-18.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/001035M93-19.jpg

10

"条件1"与"条件2"运算结果是否都为假

根据两个条件的结果是否都为假,返回一个为真或假的布尔值。

通过下面示例说明此功能块的使用。

首先,先创建一个变量,如下图:

https://cdn.china-scratch.com/timg/180917/001033M45-2.jpg

然后,给默认角色添加如下脚本:

https://cdn.china-scratch.com/timg/180917/00103A1H-21.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103B450-22.jpghttps://cdn.china-scratch.com/timg/180917/00103AC1-23.jpg

11

对"条件"的运行结果取反

将条件运算结果取反,由真变为假或由假变为真。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/0010364301-24.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103AC9-25.jpghttps://cdn.china-scratch.com/timg/180917/0010361614-26.jpg

12

连接"hello"和"world"

连接两个字符串,将一个字符串紧接着另一个字符串。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/0010361U9-27.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103M464-28.jpg

13

第"1"个字符:"world"

根据字符串中指定的位置,来获取字符串中的一个字符。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/00103I323-29.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103I508-30.jpg

14

"world"的长度

获取指定字符串的长度。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/00103J237-31.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103JI9-32.jpghttps://cdn.china-scratch.com/timg/180917/00103L405-33.jpg

15

"数字1"除以"数字2"的余数

获取两个数字之间进行除法后的余数部分。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/00103K196-34.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103G406-35.jpg

16

将"数字"进行四舍五入

获取距离一个指定数字最近的整数值。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/00103K239-36.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103Q353-37.jpghttps://cdn.china-scratch.com/timg/180917/00103TY6-38.jpg

17

"平方根"9

返回指定数字所选择函数(abs、sqrt、sin、cos、tan、asin、acos、atan、Ln、log)的结果。

通过下面示例说明此功能块的使用。

首先,添加如下脚本:

https://cdn.china-scratch.com/timg/180917/00103UF5-39.jpg

运行效果如下:

https://cdn.china-scratch.com/timg/180917/00103R2D-40.jpg

3

创建一个简单的示例

一块和大家做一款猜数字游戏,在这个应用程序中使用运算符功能块生成随机数让玩家猜测,并将玩家猜测的数字与游戏随机生成的数字进行比较。

该应用程序包括一个背景、11个角色、2个声音文件、12段脚本。

首先:给舞台添加背景

点击位于角色列表的空白舞台缩略图,然后点击"从背景库选择背景"图标,从背景库"户外"分类中选择"brick walll1".

https://cdn.china-scratch.com/timg/180917/00103V246-41.jpg

其次:添加所需的角色

除默认角色小猫外,需要新建10个按钮角色。

添加"按钮"角色,点击"从角色库中选取角色"图标,从角色库"物品"分类中选择"Button1".

选择新添加的第一个按钮"Button1",重命名为"Button0",依次添加其它的9个按钮,并依次修改其名称。

给每个按钮添加"显示标签",即Button0按钮上中显示"0",Button1按钮上显示"1".完成后效果如下图:

https://cdn.china-scratch.com/timg/180917/00103TQ7-42.jpg

为"Button"添加显示"标签"的具体操作如下,首先:从角色列表中,选择一个按钮,然后点击位于脚本区域顶端的"造型"标签页。参考下图:

https://cdn.china-scratch.com/timg/180917/00103TN6-43.jpg

点击右侧"文本"工具,然后在左侧"按钮"上进行点击,即可输入相应的文字。

https://cdn.china-scratch.com/timg/180917/0010395V8-44.jpg

再次:添加应用程序所需的变量

该应用中需要创建3个变量,点击位于脚本区域顶端的"脚本"标签页,点击"数据"分类,然后点击"新建变量",分别创建名为"Guess"、"No of Guesses"、"RandomNo"三个变量。

"Guess"用来记录用户最近做出的猜测。

"No of Guesses"用来记录每次游戏中已猜测过的次数。

"RandomNo"用来记录游戏随机生成的一个数字。

https://cdn.china-scratch.com/timg/180917/0010395Y9-45.jpg

然后:为应用程序添加声音文件

该应用程序中需要使用两个声音文件,当玩家猜对时和猜错时分别需要使用的声音文件。

当猜测错误时播放的声音使用默认的"pop"声音即可。它自动地作为应用程序中每一按钮角色的一部分而包含其中。当猜对时播放的声音使用"cheer"。

要添加"cheer"声音文件,从角色列表中选择"小猫"缩略图,然后点击脚本区域顶部的"声音"标签页,点击"从声音库中选取声音"按钮,从声音库窗口中,选择"人声"标签,选择"cheer"声音。

最后:用角色添加相应的运行脚本

1.为每个数字按钮角色添加脚本

https://cdn.china-scratch.com/timg/180917/0010391222-46.jpghttps://cdn.china-scratch.com/timg/180917/0010393535-47.jpg

Button0-Button9的脚本是一样的,只是将Guess设定的值不一样。

2.为小猫角色添加脚本

https://cdn.china-scratch.com/timg/180917/00103914X-48.jpg

第一段脚本作用是,当接收到"Player has guesses"广播后,该脚本开始执行。首先将"No of Guess"的值增加1,判断Guess变量的值与RandomNo的值是否一样,如果不一样,则继续判断Guess是大于或小于RandomNo,并有相应文字提示。如果Guess与RandomNo的值一样,则播放"Cheer"的声音,并提示"Correct"的文字消息。等待1秒后,继续进行猜数据游戏。

第二段脚本作用是当点击绿色旗帜按钮,开始执行程序,将"Guess"、"No of Guess"设置初始值为0.然后生成一个随机数给"RandomNo"变量。最后显示两条文字消息。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com