美文网首页少儿科技教育智能硬件Coding
少儿编程游戏CodeMonkey通关攻略:第56-60关

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

作者: 君君玩科技 | 来源:发表于2017-02-26 11:33 被阅读525次

    目前进入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关,就可以看到猴博士的谆谆教诲:

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

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

    进入关卡,界面如下:

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

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

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

    第57关

    这一关的界面如下:

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

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

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

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

    第58关

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

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

    再看看代码区域:

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

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

    效果如下:

    成功!

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

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

    下一关会发生什么呢?

    第59关

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

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

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

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

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

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

    成功!

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

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

    第60关

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

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

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

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

    我们来看看效果吧:

    挑战成功!

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

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

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

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

    相关文章

      网友评论

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

        本文链接:https://www.haomeiwen.com/subject/gdkowttx.html