MIT Scratch 函数块

MIT Scratch Function Block

我正在和孩子一起阅读 "Learn to Program with Scratch" 一本书。其中一项练习要求创建一个使用一些简单公式的 "function block"。他们没有解释书中的 "function block" 是什么,否则我可能会错过它。我也找不到任何关于它的信息。谁能告诉我这是什么,可以举个例子吗? 谢谢!

我相信您正在寻找 http://wiki.scratch.mit.edu/wiki/Custom_Blocks。好像函数在Scratch中被称为"Custom Blocks"。

至于一般函数的概念http://www.webopedia.com/TERM/F/function.html应该可以了。

第一个有例子link。

祝你好运!

功能块实际上是自定义块。这是 scratch 的紫色 More Blocks 调色板。在调色板中,您可以单击制作一个块,它允许您定义自己的 block/method。您可以为块命名,也可以单击选项以添加参数,以便插入参数。您可以将块的定义 header 中的深蓝色参数拖到变量的相关块中。 例如。 Define[DrawSquare (size)] // 其中 (size) 是蓝色圆圈和参数。 重复 (4) 移动(大小)步骤 转 90 度

要放入参数,必须将定义header中的(size)拖入白色space中进行move()步

创建块后,您可以从同一调色板将块添加到程序中。您可以将参数插入白色的 spaces.

参数中

这是一个例子:

这个方块将允许小精灵在一段时间内说些什么。它还将数据存储在列表 'say':

函数是用于 "compile code" 的块。所以,而不是写

move 10 steps
turn 15 degrees
wait 1 second
say hi for 2 seconds

重复,你可以这样做:

define useless function
move 10 steps
turn 15 degrees
wait 1 second
say hi for 2 seconds

然后,你所要做的就是调用函数useless function

功能块是Scratch中的自定义块。它在某些情况下非常有效,包括笔(如果您尝试一下,我使用 "run without screen refresh" 进行即时绘图):

但基本上它比在绘制正方形之前制作变量并将所有变量设置为所需数量节省更多时间。

布尔值也一样。

Scratch 中的功能块与找到的其他块一样,只是您是决定其功能的人。您可以在块中输入值。例如,如果你想做一个可以画图形的积木,你可以让这个人选择图形的边数。然后,通过将答案放入积木中,您可以画出图形。

    Eg. Ask for number of sides
    Custom block:  Drawsides(answer goes here)
    Drawsides will draw a figure according to the number of sides. 

简而言之,自定义块通过在块中定义代码然后使用块来帮助您避免一遍又一遍地编写相同的代码。您还可以选择在自定义块中不包含输入值。 希望这会有所帮助:)