瓜瓜妈妈推荐的编程小游戏——“音乐”

第一关:

任务如下

没玩过前几关的小朋友,可以看看下图如何来编写程序。

点击下图的音乐,会出现代码块,再更改代码块里面的小模块就可以实现了,代码块会被逐条运行,这也是计算机语言的特点:编程的次序性。

编写完成后点击红色按钮“运行”,就可以听到你编写的代码发出的美妙声音了,很神奇吧!“运行”按钮左侧的滚动条,左侧是小乌龟,右侧是小兔子,从左向右调整运行的速度由慢到快。

看到下图弹出的对话框,就是程序编程正确运行过关。

我们再来看一下JavaScript计算机语言代码。

functionstart2(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}

第二关:

任务如下,认真阅读

这里出现了一个函数概念,也不难,先让瓜瓜妈妈来给你讲解下。

之前在给学生上课的时候,也遇到这个问题,(瓜瓜妈妈不是科班出身,本科专业是英语专业),我也研究了好久如何让学生能够明白函数的作用,最后——重点来了:我把函数拟人化的看成是我的小宠物(可以是,,,)每个宠物有自己的功能。

比如说:负责报时,只要一叫的名字,就告诉你时间;

负责看门,只要一有人敲门,就说“谁呀?”;(触发事件)

负责唱歌,只要叫的名字,就唱“小兔子乖乖,把门开开。。。”

(当然了宠物负责什么事情都是由你编程决定的)

现在大家能明白一点了吗?!如果没有宠物(函数),就需要我们每次报时,都要重新编写报时的程序,那为了方便我们有了宠物(函数),只要叫下宠物(函数)的名字就OK了!下面来试验下。

这是我们这次块语言编程的函数块。

是瓜瓜妈妈编写的“小兔子”宠物(函数)

宠物函数编写完成后,点击运行是没有任何反应的,想想为什么?!瓜瓜妈妈上面说到在什么样的情况下,宠物会做出反应,一种是叫他的名字,一种是有人敲门等等等等(情况太多了)。。。那么现在编写的小兔子宠物(是个雌兔吧),我想在叫她名字的时候就给我演奏乐器,那么就需要当点击运行时,我叫她的名字。如下图。

现在点击运行会发现小兔子函数只弹奏了一遍,如果我们要完成这关需要小兔子弹奏两遍,那怎么做?!

注:块语言游戏中,如果你把宠物(函数)名称改变后,调用宠物(函数)时名字就自动生成了,不需要再编写。但如果在其他的语言编写程序中,有两个或两个以上的宠物(函数)时,就需要手动改写名称了!

我们把之前学的知识点巩固一下(老师职业病),也来想一下宠物(函数)存在的意义,如果我们没有小兔子那么代码块是这样的

如果真的像上图一样编写代码也能运行,但是如果心情好,想弹奏个100来遍,那么想象一下,代码有多长。所以我们的宠物(函数)有用吧!她存在的意义就是如此!我像上图一样运行了下,弹出的对话框也告诉我们要优化下代码。

另外再试想下,我想把音乐“两只老虎”,换成“小星星”(一闪一闪亮晶晶)的音乐,如果有函数,我只需要改写函数中的代码块,而如果没有函数,我要手动改写那弹奏的100来遍,我真的会疯了的!!!!!

好!言归正传,请按照瓜瓜妈妈教给大家的宠物函数方法,执行下就通关了。

functionstart2(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}

第三关

任务如下

编写下一个函数,来弹奏后面一段重复的节奏。

我又定义了一个小老虎函数,演奏两遍。

运行代码如下。

functionstart2(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();_E5_B0_8F_E8_80_81_E8_99_8E();}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}

这次大家是不是习惯使用函数了呢!下面再来巩固下。

第四关

任务:

functionstart2(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();_E5_B0_8F_E8_80_81_E8_99_8E();}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}

第五关

任务

再定义一个函数,名字随便取。

functionstart2(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();_E5_B0_8F_E8_80_81_E8_99_8E();_E7_BB_93_E5_B0_BE();_E7_BB_93_E5_B0_BE();_E5_AE_8C_E6_88_90();_E5_AE_8C_E6_88_90();}function_E7_BB_93_E5_B0_BE(){play(0.125,11);play(0.125,12);play(0.125,11);play(0.125,10);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_AE_8C_E6_88_90(){play(0.25,7);play(0.25,4);play(0.5,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}

第六关

这关的思路是把钢琴变为小提琴,问题是把这个代码块放在哪里?大家想想。

还可以把小提琴代码块放在哪里?!大家手动试一试。

乐器英语:instrument;小提琴英语:violin

functionstart3(){setInstrument('violin');_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();_E5_B0_8F_E8_80_81_E8_99_8E();_E7_BB_93_E5_B0_BE();_E7_BB_93_E5_B0_BE();_E5_AE_8C_E6_88_90();_E5_AE_8C_E6_88_90();}function_E7_BB_93_E5_B0_BE(){play(0.125,11);play(0.125,12);play(0.125,11);play(0.125,10);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_AE_8C_E6_88_90(){play(0.25,7);play(0.25,4);play(0.5,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}

第七关

任务,这是函数的进阶版

二重声部演奏《两只老虎》,如下面的图也能实现,但是不够优化。

我们用函数再来优化下,能优化哪里呢?当然是优化重复部分比较多的地方。

把上图重复部分写成函数,就成了

也可以像

能看到区别吗?大家来找茬

就在休止的部分哦!

functionstart3(){_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}functionstart4(){_E4_BC_91_E6_AD_A2();_E4_BC_91_E6_AD_A2();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();_E5_B0_8F_E8_80_81_E8_99_8E();_E7_BB_93_E5_B0_BE();_E7_BB_93_E5_B0_BE();_E5_AE_8C_E6_88_90();_E5_AE_8C_E6_88_90();}function_E4_BC_91_E6_AD_A2(){rest(1);}function_E7_BB_93_E5_B0_BE(){play(0.125,11);play(0.125,12);play(0.125,11);play(0.125,10);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}function_E5_AE_8C_E6_88_90(){play(0.25,7);play(0.25,4);play(0.5,7);}

第八关

任务,学会上面的内容,这关就容易多了。

functionstart3(){_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E4_BC_91_E6_AD_A2(){rest(1);rest(1);}functionstart4(){_E4_BC_91_E6_AD_A2();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();_E5_B0_8F_E8_80_81_E8_99_8E();_E7_BB_93_E5_B0_BE();_E7_BB_93_E5_B0_BE();_E5_AE_8C_E6_88_90();_E5_AE_8C_E6_88_90();}function_E7_BB_93_E5_B0_BE(){play(0.125,11);play(0.125,12);play(0.125,11);play(0.125,10);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}function_E5_AE_8C_E6_88_90(){play(0.25,7);play(0.25,4);play(0.5,7);}

第九关

任务:

functionstart5(){_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E4_BC_91_E6_AD_A2(){rest(1);rest(1);}functionstart6(){_E4_BC_91_E6_AD_A2();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E(){_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E5_85_94_E5_AD_90();_E5_B0_8F_E8_80_81_E8_99_8E();

_E5_B0_8F_E8_80_81_E8_99_8E();_E7_BB_93_E5_B0_BE();_E7_BB_93_E5_B0_BE();_E5_AE_8C_E6_88_90();_E5_AE_8C_E6_88_90();}functionstart7(){_E4_BC_91_E6_AD_A2();_E4_BC_91_E6_AD_A2();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E7_BB_93_E5_B0_BE(){play(0.125,11);play(0.125,12);play(0.125,11);play(0.125,10);play(0.25,9);play(0.25,7);}functionstart8(){_E4_BC_91_E6_AD_A2();_E4_BC_91_E6_AD_A2();_E4_BC_91_E6_AD_A2();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();_E4_B8_A4_E5_8F_AA_E8_80_81_E8_99_8E();}function_E5_B0_8F_E5_85_94_E5_AD_90(){play(0.25,7);play(0.25,8);play(0.25,9);play(0.25,7);}function_E5_AE_8C_E6_88_90(){play(0.25,7);play(0.25,4);play(0.5,7);}function_E5_B0_8F_E8_80_81_E8_99_8E(){play(0.25,9);play(0.25,10);play(0.5,11);}

第十关自由发挥

不用多解释,大家也明白后面几关了吧!今天我们学到了最重要的一个知识点就是函数,希望大家多多练习!加油!

最后给大家留个任务(老师职业病),希望大家用第十关来编写歌曲“小星星”(一闪一闪亮晶晶)并且思考

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180131G0KY1000?refer=cp_1026

相关快讯

扫码关注云+社区