【发布时间】:2020-05-26 08:36:09
【问题描述】:
我正在和我的孩子一起阅读一本“学习从头开始编程”的书。其中一项练习是要求创建一个使用一些简单公式的“功能块”。他们没有解释书中的“功能块”是什么,否则我可能会错过它。我也找不到任何关于它的信息。谁能告诉我这是什么,可以举个例子吗? 谢谢!
【问题讨论】:
标签: mit-scratch
我正在和我的孩子一起阅读一本“学习从头开始编程”的书。其中一项练习是要求创建一个使用一些简单公式的“功能块”。他们没有解释书中的“功能块”是什么,否则我可能会错过它。我也找不到任何关于它的信息。谁能告诉我这是什么,可以举个例子吗? 谢谢!
【问题讨论】:
标签: mit-scratch
功能块实际上是一个自定义块。这是紫色的 More Blocks 调色板。在调色板中,您可以单击制作块,它允许您定义自己的块/方法。您可以命名块并单击选项以添加参数,以便插入参数。您可以将块定义标题中的深蓝色参数拖到变量的相关块中。 例如。 Define[DrawSquare (size)] // 其中 (size) 是蓝色圆圈和参数。 重复 (4) 移动(大小)步骤 转90度
要放入参数,必须将定义标题中的(大小)拖到空白处,以便移动()步骤。
创建块后,您可以从同一调色板将块添加到程序中。您可以在参数中插入参数,这些参数是空格。
【讨论】:
我相信您正在寻找http://wiki.scratch.mit.edu/wiki/Custom_Blocks。在 Scratch 中,函数似乎被称为“自定义块”。
至于函数的概念,一般http://www.webopedia.com/TERM/F/function.html 应该可以解决问题。
第一个链接上有例子。
祝你好运!
【讨论】:
函数是用于“编译代码”的块。所以,不要写
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 中的自定义块。它在某些情况下非常有效,包括笔(如果您尝试一下,我使用“不刷新屏幕运行”进行即时绘图):
但基本上它比制作变量并在绘制正方形之前将它们全部设置为所需的数量节省更多时间。
布尔值也一样。
【讨论】:
Scratch 中的功能块与找到的其他块一样,只是您是决定它做什么的人。您可以在块中输入值。例如,如果您想制作一个可以绘制图形的块,您可以让人们选择图形的边数。然后,通过将答案放入块中,您可以绘制图形。
Eg. Ask for number of sides
Custom block: Drawsides(answer goes here)
Drawsides will draw a figure according to the number of sides.
简而言之,自定义块通过在块中定义它然后使用该块来帮助您避免一遍又一遍地编写相同的代码。您还可以选择在自定义块中不包含输入值。 希望这会有所帮助:)
【讨论】: