最新消息:680元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

用Scratch巧解数学题——第二鸡兔同笼

Scratch 少儿编程 4951浏览 0评论

友情提示:680元/半年,儿童学编程,就上码丁实验室

用Scratch巧解数学题

——第二鸡兔同笼

 

用Scratch巧解数学题——第二鸡兔同笼

问题:已知鸡和兔总共有100只,鸡的脚数比兔的多20只。求:鸡和兔各有多少只?

类似这样的问题就是“第二鸡兔同笼问题”。说到鸡兔同笼问题几乎无人不知,因为它是小学数学课本上的内容啊。但第二鸡兔同笼问题知道的人就不多了!

鸡兔同笼问题一般用假设法求解。第二鸡兔同笼问题当然也可以用假设法求解,只是更加抽象,更加难以理解,所以教材中直接飘过。

解法一:直接法。这种方法从数学的角度来说一定要掌握。

鸡的脚数比兔的多20只,换算成鸡的头数就是10只,去掉这10只还有90只。我们把这90只按照<2只鸡+1只兔>打包进行分配,一共可以分30组。因此,兔的只数就是30只,鸡就有70只。用算式表达就是:

兔有(100-20÷2)÷(2+1)= 30(只)

这里的关键是把2只鸡和1只兔打包看成一个整体。之所以如此是因为2只鸡的脚数和1只兔的脚数相同。扣除掉10只鸡后,要让鸡和兔的脚数相同,鸡的只数必须是兔的2倍。

解法二:假设法。

假设全部是鸡,一共就有200只脚,扣除掉多出的20只脚后还有180只脚。注意,现在兔变成了2只脚的兔。扣除掉10只鸡后,要让鸡和兔的脚数相同,鸡的只数必须是兔的2倍。把每两只鸡的脚分配(捆绑)到一只兔上,每只兔就有6只脚。据此,我们就可以算出兔的只数。列算式就是:

兔有 (2×100-20)÷(2+4)= 30(只)

解法三:假设法。

假设全部是兔,一共就有400只脚。注意,现在鸡变成了4只脚的鸡。扣除掉10只鸡后,要让鸡和兔的脚数相同,鸡的只数必须是兔的2倍。把每只兔的4只脚平均分配(捆绑)到两只4脚鸡上,每只鸡就变成了6脚鸡。还要注意的是,先前扣除掉的10只鸡仍然是4脚鸡,要加上20只脚分配给它们,它们才能变成6脚鸡。据此,我们就可以算出鸡的只数。列算式就是:

鸡有(4×100+20)÷(2+4)= 70(只)

假设法很抽象,是比较难理解的。关键是要理解扣除掉10只鸡后,要让鸡和兔的脚数相同,鸡的只数必须是兔的2倍。

解法四:列方程。

假设鸡有x只,兔就有(100-x)只。根据鸡的脚数比兔的多20只这个等量关系就可列出方程,

2x-4×(100-x) = 20

x = 70

用方程的方法是很简单的!但是要知道孩子们在学习鸡兔同笼的时候还没有学习方程呢!

解法五:枚举法。这种方法从编程的角度来说一定要掌握。

枚举法,也是一种常用的数学解题方法。从算法上来说,更加容易理解。就是把鸡数或者兔数从1开始到100逐一进行枚举,直至枚举到符合题目要求的那个数为止。显然,人工计算的工作量很大。但是,对于计算机来说,这点计算量压根儿就不是个事儿。

通常在编写代码前,我们会把整个编程的算法用流程图表示出来,就像盖房子先要有施工图一样。所谓编程,就是按照流程图,按部就班编写代码!有了具体的算法,很容易画出程序流程图。枚举法的流程图如下:

用Scratch巧解数学题——第二鸡兔同笼

有了流程图,编写代码就很简单了。流程图就是编程的施工图。学习编程,画流程图是基本功。一定要养成无流程图不写代码的好习惯!流程图本身就是编程思路的体现,通过画流程图也可以进一步整理我们的思路。

用Scratch巧解数学题——第二鸡兔同笼

程序写好后,还要调试,看看功能是否正常。运行程序,按照提示依次输入100和20,结果很快就算出来了,“鸡70只,兔30只”。秒杀!

计算机是不是很强大呀!但前提是你要会编程呀!只有会编程,你才能让计算机替你解决问题呀!别担心,编程其实也没有想象那么难!只要你愿意学。

Scratch虽然是专门为少儿设计的编程语言,但其功能还是非常强大的,不仅可以创建动画、游戏和故事书,还可以用来求解数学题,实现一些数学算法。学过Scratch后,将来再学习其他高级程序设计语言,理解起来也会更加顺畅,更加容易!

您必须 登录 才能发表评论!