抽象思维能力
编程需要抽象思维能力,能够用符号表达某些事物。这里有两个有趣的游戏能锻炼孩子的抽象思维能力。
找彩蛋
这个游戏是Emma Vanstone发明的。Vanstone家每年复活节都会让宝宝们在家里找复活蛋,但每次他们都能在5分钟内找到。为了让这个传统玩起来更有挑战性,Vanstone妈将游戏升级,让孩子先按指令写完“代码”,然后才得到线索。
(图片来源:science-sparks.com)
Vanstone妈为每个复活蛋都单独制作了一张代码卡,下面是几个例子:
1、随机列出一些字母,让孩子用该字母在字母表中对应的序数把字母替换掉。
例如:ACFDEB,用序数替换得到136452。
2、替换字母。
例如:
A、列出一些字母,规定将所有的A变成Z,将所有的Z变成A;
B、将字母替换成其在字母表中的下一个字母(A变成B,B变成C);
C、将字母替换成其在字母表中的下两个字母(A变成C,C变成E)。
3、用不同的符号替代字母。↓
(图片来源:science-sparks.com)
家长可以将线索用白色蜡笔写在白纸上,孩子写完“代码”后再想办法看线索(用不同颜色的蜡笔涂在纸上)。
间谍解码器
间谍解码器适合8~10岁左右的孩子玩,材料很简单:
卡纸、剪刀、圆规、量角器、铅笔、尺子、按扣。
制作方法:
1、用圆规画出大、中、小规格的圆各一个,剪出来;
2、用按扣在大圆和中圆的圆心将两圆固定,借助量角器和尺子将圆平均分成27份(份数自定义,这里是26个字母+1个问号);
3、在大圆和小圆分别写上26个字母和符号,一个圆按字母的顺序写,另一个圆打乱顺序写。
(这里是外圈字母按顺序写,内圈打乱顺序)
4、写一串密码。选一个字母或符号作为解码的关键,如上图,内外圈的“?”对准了,就可以开始写密码。家长可以选一篇短的课文,或者给孩子写一段英文信息,对照着解码器出题。
例如:外圈的“CAT”三个字母对应内圈的字母是“CBQ”,就在纸上写下“CBQ”,让孩子利用解码器,解出原文的单词“CAT”。
拆解过程的能力代码是指导计算机一步一步执行指令以完成一项任务的语言,所以编程另一个重要的技能是将一个过程拆解成很多个小步骤,编写成一个个清晰的指令,让没有背景知识的人都可以根据指令成功地完成任务。
所以你可以利用日常生活和一些好玩的家庭游戏,锻炼孩子拆解一系列动作、过程的能力。
例如:孩子会做三文治,就让TA把做三文治的过程分步详细地写出来,让另一个不懂做三文治的孩子(或大人)照着这个指令做,看能不能准确地把三文治做出来。
还有另外一个全家欢的游戏是,在大厅设好起点和终点,中间加很多路障,一人蒙着眼睛,按照队员的指令从起点走到终点,避过所有路障。
玩的时候应注意指令的格式:方向+步数,例如,向前走2步,左转走4步。
理解二进制我们通过电脑看到的图片、文字、视频等其实对电脑来讲都是一堆数字,而且只有0和1组成的一堆数字。所以学编程理解二进制很重要。
二进制项链
下面这幅图就是26个字母的二进制表达方法,白色的正方形代表1,黑色的代表0。所以A的二进制码(ASCII码)是01000001。
二进制项链的玩法说白了就是按一定的规律串珠子。让孩子选择一种颜色的珠子代表1,另一种颜色的珠子代表0,把自己的英文名字“串”成一条项链。
例如,孩子的英文名字是Tom,用二进制表达就是01010100(T)01001111(O)01001101(M),如果孩子喜欢黑色珠子代表0,白色珠子代表1,就根据上面列出来的数字将相应珠子串起来。
当然,不喜欢串珠子,可以拼乐高。↓
如果...那么...指令
稍微接触过编程的人都会知道“If.....then.....”(如果......那么......)指令,它能告诉计算机当一件事发生时,接着要做出什么反应。例如,如果键入“A”,那么显示“A”。
让孩子理解这个指令可以玩一个“如果......那么......”游戏,家长可以组织多点孩子,在公园,园子或者大的室内空间里玩。
游戏规则:
每轮游戏有一个孩子做“程序员”,其他孩子都是“电脑”,“程序员”站在“电脑”前,说出“如果......那么......”指令。
指令的难度可以分等级。
初级:
如果我做这个动作,你也做这个动作
初级的指令适合幼儿园的孩子。“程序员”发出指令——做一个动作,“电脑”们要做出一模一样的动作,并且跟“程序员”同时完成。
中级:
如果我做这个动作,你要做那个动作
“程序员”编写指令——如果我做这个动作,你们要做那个动作,例如,如果我转圈,你们要跳一下。
可以一次编写几个指令,“程序员”随机变换动作,让“电脑”们做出相对应的动作,而且是跟“程序员”同时完成。
高级:
如果我做这个动作,你要做那个动作,
否则,你要做其他动作
这个指令非常有挑战性。举个例子:如果我举起右手,那你们就要举起左手,否则要抬起你的右脚。
很好玩的是,如果“程序员”不举起右手,甚至站在那里不动,“电脑”们都要举起右脚。
如果想让游戏变得更加刺激和有挑战性,“程序员”可以加快发出指令的速度,并且制定淘汰规则,每一轮淘汰“宕机”(跟不上或者动作做错)的“电脑”,坚持到最后的“电脑”就赢。