Scratch趣味数学之猴子吃苹果
2020-06-30陈新龙
电脑报 2020年18期
陈新龙
Scratch之所以那么受初学者欢迎,就是因为用这套编程指令孩子不需要会敲代码,不需要会使用键盘,不需要懂英语,就可以学习编程。
编程与数学有密不可分的关系,在学编程的同时解决一些奥数上的难题比如拔河比赛、井底之蛙……更能提高解题能力呢。
让我们一起来做一道有趣的奥数竞赛题“猴子吃苹果”吧。
一只猴子摘了一堆苹果,原计划十五天吃完,它第一天吃了总数的一半多一个,第二天吃了剩下的苹果一半多一个,到第十天发现只剩下一个苹果了。那么聪明的你知道,小猴子一共吃了多少个苹果吗?该怎么计算呢?
分析这道题目我们可以发现,如果我们一开始从第一天开始计算,根本不知道如何下手,因为我们根本不知道第一天到底有几个苹果,但是呢我们从题目中可以得出,吃的苹果的数量是剩下苹果的一半多一个,假如第一天有X个苹果,那么就要吃X/2+1个苹果,一直吃到第十天只剩下了最后一个苹果。我们就可以想到从最后一天往前进行计算,第十天剩一个苹果,那么第九天根据X-(X/2+1)=1就可以计算出有4个苹果,第八天有10个苹果,从后往前我们可以得出第一天一共有几个苹果,这样我们总结出了一个公式:(X+1)×2。分析好算法后就开始编写程序了。今天我们用Scratch和Python分别来编写这道奥数题吧。
雖然Scratch和Python编写的方式不同,但内在算法是类似的,唯一不同的是,Scratch代码从第一天开始到第十天,而Python代码从第十天开始到第一天,显然一个是顺序,一个是逆序,最后的答案都是1534。不知道聪明的你是不是答对了呢?题目的难度不是特别大,接下来我们也会结合奥数题目来给大家分享Scratch编程。