少儿编程启蒙课程8:解决复杂问题的利器——函数

大家好,这是我们少儿编程启蒙系列课程的第8课,6-8岁左右的孩子经过一些指导就能完成。

有这样一个故事:

在一次芝加哥大学课堂上,费米问学生:芝加哥市有多少调琴师?学生们一脸茫然。费米提示把这个问题“分解成一些便于操作的小问题,然后鼓起勇气作猜测和假设”。 芝加哥有多少居民?可靠的估算是300万;平均每个家庭有多少人?4人;多少家庭有钢琴?大概三分之一,那么全市大约就有25万架钢琴;一架钢琴隔多长时间需要调音?平均5年,那么芝加哥平均每年有5万架次的钢琴需要调音;每个调音师每天能为多少架钢琴调音?4架;假设他一年工作250天,那么他每年约为1000架钢琴调音。由此,费米和学生们推测,芝加哥市大概有50位钢琴调音师。

对于这种不确定性的问题,想要找到相对准确的答案,可以使用“费米估算” 。费米是著名的物理学家和诺贝尔得主。“费米估算”的核心就是模块化思维。模块化思维,是一种学习和思考的方式。

模块化思维中最核心的就是:把复杂问题分解成一系列简单的小任务,降低难度。

在我们的编程中,如果碰到复杂问题,也可以使用模块化的思想、将复杂问题分解成一系列简单的小任务,这就要用到函数。

小贴士

函数是指一段程序或代码,它可以直接被另一段程序或代码使用。

词汇表

函数(function)

任务背景

今天的任务是帮助农民伯伯收获庄稼,农田里庄稼有玉米、南瓜、生菜等等。地里的庄稼实在太多了,你能用模块化的思维、使用函数编程实现自动采集吗?

在开始任务之前,我们还是先了解一下如果创建和使用函数:

少儿编程启蒙课程8:解决复杂问题的利器——函数

任务简介

明白了如何创建和使用“函数”,我们就可以一起挑战关卡了,下面是关卡链接。

解决复杂问题的利器——函数

本关卡的任务有一些难度,很多小朋友一开始做的时候会有点困惑,下面我们来看一些有挑战性的任务。

任务4

在一片农田中,种植了玉米和南瓜,同时题目也给出了“搜查广场上的玉米”的函数,那么我们可以使用该函数来解决问题。

分析发现南瓜在所有玉米的后面,因此可以使用“重复直到那里有南瓜”,需要重复的指令有:

  • “向前移动”

  • “搜查广场上的玉米”

到达南瓜后,可以使用“摘南瓜”的指令采摘南瓜。此时,下面的庄稼采摘完毕,还需要走到上面的农田里继续采摘,最终代码如下图所示:

任务10

左右两片农田里种植了生菜,生菜的分布非常有规律。我们可以创建一个函数“采摘生菜”来获取右边农田里的生菜,代码如下图所示:

运行“采摘生菜”的函数后,发现农民回到了出发的位置。此时,只需要一个“向右转”的指令,农民又面临和刚才一样的任务,继续使用函数“采摘生菜”就可以将左边农田中的指令采摘完毕。最终代码如下图所示:

任务12

上下两片农田中,种植了玉米和南瓜。本任务中给定了多个函数

  • “搜查广场上的玉米”:如果有玉米,那么摘玉米

  • “收获所有的南瓜”:如果有南瓜,则将采摘所有南瓜

  • “沿路径选取”可以将一条路径上的玉米和南瓜全部摘取

那么我们可以使用函数“沿路径选取”采摘上边农田中的玉米和南瓜,代码如下图所示:

采摘完上边农田中的庄稼后,农夫来到如上图所示的位置,此时可以向右转,使用函数“沿路径选取”继续采摘下边农田里的庄稼。最终代码如下图所示:

介绍就到这里,你能独立完成其余的挑战吗?

任务总结

我相信所有小朋友在尝试几次之后都能顺利完成所有的任务。本节课中,我们学习了什么是模块化思维,以及如何创建和使用函数来解决复杂问题。

小朋友们你能发现生活中有使用模块化思维解决问题的例子吗?

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少儿编程乔老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值