最新消息:

Scratch实例4 | “两只老虎”编曲

Scratch 少儿编程 3528浏览 0评论

友情提示:视频教程观看时请手动设置清晰度。

Scratch实例4 | “两只老虎”编曲

 

跟随本文的讲解,你将完成《两只老虎》歌曲,本实例主要还是为了练习“变量积木”的使用。

在声音积木第3讲的文章中,我们其实已经完成了一个《两只老虎》的编程练习。所以,你可以在之前程序的基础上改编,形成小程序的第2版(实际生产中,我们程序员可能会将其命名为version 2.0.0),同时,你应该已经预备声音积木、音符、音节等的相关知识。

以上,便是继续阅读本文的前提!

如果你需要了解声音积木的用法,或者查看之前的编程过程,点击《Scratch声音积木(part 3)》,在文末查看两只老虎的小例子。

00 软件需求说明

需求说明:

  1. 在之前编写的《两只老虎》程序基础上改编
  2. 使用列表积木完成程序
  3. 列表数据提前在纯文本文件中准备好

01 回顾第一版程序

点击Scratch主界面左上角的“文件->打开”,找到之前编写的《两只老虎》程序。

程序的积木编码区,应该是张这个样子的:

Scratch实例4 | “两只老虎”编曲

为什么要用列表积木改造?

从上图可以看出,程序中基本上都是重复积木,而且这个程序只能演奏两只老虎,如果哪天你想编写《祝你生日快乐》的演奏程序,这些积木没有办法重复使用。

正是为了解决积木重复无法复用这两个问题,我们才用列表积木改造之前的程序。

02 准备列表导入文件

 [弹奏音符  x     y  拍]  积木有两个输入项,第1个时音符,第2个时节拍。所以,需要连个列表积木。

列表积木插入元素的方式有很多,通过导入文件插入元素具有快捷和可复用的特点。

所以,我们准备两个文本文件,分别把上节截图中积木的两个输入项分别保存到文件中,文件的部分内容如下:

Scratch实例4 | “两只老虎”编曲

需要特别注意

原始程序最后一部分有2个 [休止 1 拍] 积木,可以用  [弹奏音符  0     1  拍]
替换,也就是说,在音符.txt中休止符的地方应该写0、节拍.txt中写1。

03 创建数据积木

增加1个变量积木“序号”,两个列表积木“音符”、“音节”。

导入上节两个txt文件。

Scratch实例4 | “两只老虎”编曲

04 编码

删除之前的积木,开始编码……

Scratch实例4 | “两只老虎”编曲

 

代码讲解

  1. 循环体重复执行次数等于节拍列表的元素个数。因为节拍列表和音节列表元素个数是一样的,所以,也可以用 ( 音节 的项目数) 控制循环次数。
  2. 变量积木“序号”的作用是按照1,2,3,4……的顺序控制列表的次序,实现逐个取列表中的元素的目的。

 

09 完工!运行程序

至此,我们完成了“需求说明”中的全部内容。

点击舞台右上角的小旗子运行程序,看看效果吧。

 附加思考

Q: 如何复用这个程序??

A: 比如,我们再做一个《祝你生日快乐歌》的程序,只需要在准备与这个歌曲对应的 音符.txt 和 音节.txt ,然后重新导入音符、音节列表积木,这样就可以了。你看,整个过程中一个积木都不需要修改!这就“复用

您必须 登录 才能发表评论!