第388章 乐乐的成长(1 / 2)
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
乐乐十岁了。
四年级开学那天,他背着书包站在学校门口,回头看了一眼苏婉。苏婉朝他挥了挥手,他点了一下头,转身走进了校门。书包比去年大了一圈,里面装了新课本、新文具盒、一个水壶和一本他偷偷塞进去的编程书。
苏婉看着他走进校门的背影,在微信上给林晨发了一条消息:他又把那本编程书带去了。
林晨回了一个字:
乐乐对编程的兴趣,是从去年暑假开始的。
那时候林晨在书房里跑模型,iPad上显示着一条条信号线——买入、卖出、持仓、止损,每一条线都在实时更新。乐乐从门缝里探进一个脑袋,看了两分钟,问了一句:爸爸,这些线是什么?
是股票的走势。林晨说。
股票是什么?
是一种投资。你买了一家公司的股票,就是买了这家公司的一小块。公司赚钱了,你的股票就值钱了。
乐乐想了一下。那你怎么知道哪家公司会赚钱?
看数据。林晨指了指iPad上的图表。这些线是数据画出来的。有些数据说明这家公司在变好,有些数据说明这家公司在变差。我写了一个程序来分析这些数据,程序会告诉我要买还是卖。
程序?你自己写的?
乐乐又想了一下。我能学写程序吗?
林晨看了他一眼。乐乐站在书房门口,书包还没放下,校服领子歪了,头发被风吹得有点乱。他的眼睛很亮,是真正在想事情的时候才会有的那种亮。
可以。林晨说。但有一个条件。
什么条件?
先写完暑假作业。
乐乐了一声,转身就跑。苏婉在客厅里叫了一句:先洗手!他没有听见。
那个暑假,乐乐用了一个月的时间看完了林晨给他买的一本《Scratch编程入门》。Scratch是麻省理工学院开发的儿童编程语言,用积木块拖拽的方式学编程逻辑,不需要打字,只需要把不同颜色的模块拼在一起。乐乐花了三天时间搞懂了循环,一周搞懂了条件判断,两周搞懂了变量。一个月后,他在Scratch上做了一个小游戏——一只小猫在屏幕上跑来跑去,碰到边缘就反弹,碰到苹果就加分,碰到炸弹就减分。
游戏做好的那天晚上,乐乐抱着iPad跑到林晨面前。爸爸你看!我做了一个游戏!
林晨放下手上的笔记本,接过iPad看了一遍。小猫跑得很流畅,碰撞检测做得没有bug,分数的计算也正确。他点了一下重新开始,游戏重新运行,还是流畅。
你怎么做碰撞检测的?他问。
就是判断小猫的坐标和苹果的坐标有没有重叠。乐乐说。重叠了就是碰到了,碰到就加分。炸弹也一样。
林晨看了他三秒。你怎么知道坐标重叠的?
你那本书上写的。乐乐指了指书架上那本《Scratch编程入门》。第四章第三节,碰撞检测。我看了三遍才看懂。
林晨把iPad还给乐乐,没有说话。他在心里算了一下——四年级的孩子,一个月看完一本编程入门书,做了一个有碰撞检测的小游戏,逻辑没有bug。这个速度不算快,但也不慢。更重要的是,他是自己看懂的,没有让林晨教。
你接下来想做什么?林晨问。
我想做一个小猫跑迷宫的游戏。乐乐说。但是迷宫比小猫跑来跑去复杂,我还没想好怎么做。
你先想。想不明白再来问我。
乐乐抱着iPad跑回了自己的房间。苏婉从厨房出来,看了一眼乐乐的背影,又看了一眼林晨。
你让他学编程?
他自己要学的。
他才十岁。
十岁可以学了。林晨说。我当年学编程也是十岁左右,在学校的电脑房里看同学写BASIC,回家之后自己在纸上画流程图。
苏婉没有再说什么。她回到厨房,继续做饭。
四年级上学期,乐乐在学校的表现一直很稳。语文中上,数学上等,英语中等偏上。苏婉每次开家长会回来都说,乐乐的语文老师说他作文写得好,数学老师说他解题快但有时候跳步骤,英语老师说他发音准但词汇量不够。
林晨对这些评价没有太在意。他在意的是另一件事——乐乐放学之后做什么。
每天下午四点半放学回家,乐乐的第一件事是写作业。写完作业大概五点半,然后他会在自己的房间里待到七点吃晚饭。这一个半小时,他有时候看书,有时候画画,有时候玩iPad上的游戏。但从暑假之后,这一个半小时里的游戏时间逐渐被编程时间替代了。
有一天林晨路过乐乐的房间,看到他坐在书桌前,iPad上不是Scratch而是Python的教程页面。他停下来看了一会儿。
乐乐在学Python。
不是林晨教的,是他自己找的。他在Scratch上做了三个游戏之后,觉得积木块拖拽的方式太限制了——他想做更复杂的东西,但Scratch的模块不够用。于是他在iPad上搜编程怎么学,搜到了一个Python入门教程,就开始看了。
林晨站在门口看了五分钟。乐乐的iPad上是一个编程教学网站,白色的背景上写着黑色的代码。他看得很认真,一边看一边在纸上抄代码。抄完一段代码之后,他在iPad的编程模拟器里运行了一遍,屏幕上出现了一行字:Hello,World!
乐乐没有笑。他盯着那行字看了两秒,然后继续看下一段。
林晨走开了。他没有打扰乐乐。
十月底,学校发了一个通知——鹏城市青少年编程竞赛,面向全市小学四年级以上学生,分为Scratch组和Python组。竞赛包括初赛(线上答题)和决赛(现场编程),决赛前三名有奖杯和证书。
乐乐回家的时候把通知拍了下来,发给林晨看。
爸爸,我想参加这个比赛。
你想报哪个组?
Python组。
林晨想了一下。Python组是四年级以上的,你的Python学了多久?
两个月。
两个月。林晨重复了一遍。你知道Python组的决赛题目是什么水平吗?
不知道。乐乐说。但我看了一下去年的初赛题目,大部分我能做。
林晨拿过iPad,打开了竞赛官网的历年题目。去年的Python组初赛是二十道选择题和五道编程题,选择题考的是编程基础——变量、循环、条件判断、函数定义、列表操作。编程题考的是逻辑——用Python写一个程序,解决一个具体问题。
他看了一遍题目,然后看了一遍乐乐。
你做一下去年的初赛题。
现在?
现在。
乐乐坐在书桌前,花了四十分钟做完了去年的初赛题。选择题全对,编程题做了四道,第五道做了一半——他卡在一个列表排序的问题上,不知道Python的sort函数可以传key参数。
林晨看了一遍他的答案,在最后一道题旁边写了一行:sort(key=bdax:x[1])。
这个是什么意思?乐乐问。
sort是Python的排序函数。你传一个key参数进去,告诉它按照什么规则排序。bda是一个匿名函数,x是列表里的元素,x[1]是按照元素的第二个值排序。
乐乐看了两遍,然后在纸上把这一行抄了下来。
↑返回顶部↑