少儿编程游戏CodeMonkey通关攻略:第56-60关

目前进入2017年已经两个月了,这两个月里,我在科研里如痴如醉,醉把佳人成双对。。。

停停停!这曲子简直就和之前的“药药药,切克闹。。。”一样容易让人跑偏。。。

我们还是严肃地探讨CodeMonkey这个编程游戏吧,我写完51-55关的教程之后,就等着看微信公众号“外滩教育”的反应。这是什么意思呢?事情是这样的,根据网上的教程,CodeMonkey的前50关是免费对大家开放的,从51关开始是要收费的,如果没有交学费,那么就无法使用和学习后面的关卡。我写这些教程期间,一直都是使用外滩的编辑提供给我的账号。外滩的编辑肯定知道这些,但是他们默认允许我使用他们的账户,这有两种可能,一是他们也在极力为普及和推广少儿编程这个相对新颖的事业,所以默认我这么做;二是他们压根没精力管我。而我偏向于第一种可能性!

下面进入正文,我在这篇文章里介绍第56-60关的通关攻略,这几关主要介绍for循环的用法。

在介绍关卡前,我先简要介绍下知识点:

知识点:for 循环

for循环是为了一遍又一遍重复运行“功能相同但其中某个值有变化”的代码。

例如:在过年给红包的时候,希望给年龄越大的孩子越多的红包,可以这么决定

for 年龄 = 【1岁 2岁 3岁 4岁】

      红包数额 = 100人民币 * 年龄;

end

意思是:给1岁的孩子100块红包,2岁200块,3岁300块,4岁400块,等等。

这段简单的代码就可以说明for循环的本质:重复运行“功能相同但其中某个值有变化”的代码。所有编程语言里的for循环都遵循这个思想。

下面正式介绍关卡:

第56关

进入第56关,就可以看到猴博士的谆谆教诲:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第1张图片

如果只有一个香蕉,当然用不着for循环。当有多个香蕉的时候,小猴子怎么办呢?当然,我们可以写一段代码,让小猴子吃一个香蕉;再写一段,再吃一个。。。小猴子当然没什么不乐意的,毕竟他有香蕉吃,我们呢?写for循环的代码就是为了让代码量减少,代码效率提升,这种提升是通过for循环的重复使用体现的。

我们的任务是:再for循环下写一段代码,让小猴子跟着for循环吃到所有香蕉。

进入关卡,界面如下:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第2张图片

我左看右看,这些代码已经可以直接用了,不需要我们再写什么。

直接点击运行,效果如下:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第3张图片

虽然小猴子吃到了所有的香蕉,但是他走了太多的路。这个代码还是可以改进的,比如让小猴子每次吃距离他最近的香蕉,就可以避免来回跑,节省了运行时间。

少儿编程游戏CodeMonkey通关攻略:第56-60关_第4张图片

第57关

这一关的界面如下:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第5张图片

我们会看到,这些香蕉排成了一个S型长队,等着小猴子吃,在这里,我们先假定小猴子不怕撑。我们先看看小猴子的代码:

代码“turnTo b”是让小猴子面向每个代表香蕉的变量“b”,这无法让猴子吃到香蕉,所以我们还需要写一行代码,让小猴子面向香蕉之后,大胆地向香蕉走去,一个可能的补充是如下这样的:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第6张图片

点击运行,我们可以看看效果:

这一关,我们写了一行代码,比上一关只是围观要更有意思,好期待下一关会发生什么!

第58关

这一关,我们来到了水中:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第7张图片

欺负小猴子不会游泳。。。那么只能让小龟龟背着小猴子去吃香蕉了,为什么我脑中想起了孙悟空踩着七彩祥云去见紫霞仙子的场景……可惜这里没有七彩祥云,只有小龟龟。

再看看代码区域:

只有一行代码,就是依次处理bananas里的每一个香蕉。

到这里我们可以点击小龟龟,自然就出现了turtle。然后我们点击代码框下面的各个代码指令。我写的代码如下:

效果如下:

成功!

少儿编程游戏CodeMonkey通关攻略:第56-60关_第8张图片

在前两关里,我们让小猴子面对香蕉(turnTo b),让小猴子直接走向香蕉(step distanceTo b)。

但是在这一关,我们不是让小猴子动,而是通过小龟龟(turtle)带着小猴子去动。

下一关会发生什么呢?

第59关

少儿编程游戏CodeMonkey通关攻略:第56-60关_第9张图片

猴博士告诉小猴子,这一关有老鼠。不要怕,这里的老鼠很可爱的。

少儿编程游戏CodeMonkey通关攻略:第56-60关_第10张图片

我们需要赶走老鼠,你可以试试对着电脑说:“老鼠,走开!”,你会发现,这样一点用都没有。我们看看正常的做法是:

让小猴子对着老鼠们打招呼,他们自然就跑了。

之后就和前三关,尤其是前两关一样了,用for循环让小猴子吃到香蕉。代码如下:

对比这一关和前三关的代码,我们发现,其实这关多了让老鼠们走开的步骤。点击运行,效果如下:

我们可以看到,小猴子两边来回跑的毛病还是没有改,可能是香蕉吃多了,要多动动,达到瘦下来的效果,不然人们怎么有“瘦猴子”的说法呢。

少儿编程游戏CodeMonkey通关攻略:第56-60关_第11张图片

成功!

这4关下来,我们的孩子基本就会写一个完整的for循环了。

那下一关有什么新的挑战呢?我们拭目以待!

第60关

我们先看看这一关的画面:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第12张图片

小猴子的面前是一条河,他需要通过河上的一座木桥来过河,然后他就可以大快朵颐,尽情吃香蕉了。

那么我们写代码的时候,需要首先让小猴子过河,代码如下:

小猴子过河之后,就可以按照前几关学到的for循环,写下如下代码:

我们来看看效果吧:

少儿编程游戏CodeMonkey通关攻略:第56-60关_第13张图片

挑战成功!

少儿编程游戏CodeMonkey通关攻略:第56-60关_第14张图片

这一关和第4关的区别是,把“让老鼠们离开”换成了“过一座木桥”,换汤不换药。


总结:通过这5关的学习,我们的孩子可以掌握for循环在这里的作用:让小猴子一遍又一遍重复做同样的动作,每次都针对不同的香蕉,从而最后把所有要吃的香蕉都吃完。


其实这就是我们在编程中使用的思想,我平时做科研,写代码,在很多场合都要用到for循环,比如调模型的参数,让模型不停迭代直到收敛等等。

希望对大家的孩子学习编程有所帮助,下一次我会介绍第61-65关。

你可能感兴趣的:(少儿编程游戏CodeMonkey通关攻略:第56-60关)