您现在的位置是:网站首页>Scratch编程教程Scratch编程教程

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

少儿编程网2019-08-13 15:38:53Scratch编程教程 人已围观 来源:冰城少儿编程

简介上次我们用“砍足法”的算法编写了鸡兔同笼的Scratch程序,用“砍足法”的是实质是将已知的公式代入,而程序只是将公式用Scratch语言编写,输出我们想要的结果,这里的编程只起到了计算的作用。今天我们将通过循

版权所有:http://wWw.pxcodeS.com

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

上次我们用“砍足法”的算法编写了鸡兔同笼的Scratch程序,用“砍足法”的是实质是将已知的公式代入,而程序只是将公式用Scratch语言编写,输出我们想要的结果,这里的编程只起到了计算的作用。今天我们将通过循环语句来编写解决鸡兔同笼问题的Scratch程序,从中我们会体会到更多的编程思想、编程逻辑。

在我给上二年级的儿子出了这道经典的“鸡兔同笼”问题时,他给出了不同寻常的解法,也可以说是比较笨的计算方法。

我们来看看这种方法:

因为鸡兔共有35个头,也就说明鸡和兔共有35只,那么如果假设鸡有1只,兔子的数量就是35-1=34(只),这时它们的脚一共有2x1+34x4=138(只),而题目中已知共有94只脚,显然我们的假设不成立。若鸡2只,则兔33只,那么脚共有136只;若鸡3只,则兔32只,那么脚共有134只.....这样一组一组地验证,当验证到鸡23只时,此时兔12只,我们求得脚共有94只,这是符合已知条件的,正是我们所要寻找的答案。那么是不是只有这一组数符合呢,我们需要继续验证,整个验证过程我们总结成一个表格:

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

在验证过程中我们也考虑到了两种特殊的组合,那就是只有鸡或者只有兔的情况,我们的最后两组数据正是这两种特殊组合。所有的数据全部验证后我们得到最后的结果:鸡有23只,12只。

从上面的计算过程我们可以看出,这种做法需要进行大量的计算,如果我们用这种方法解题,将耗费大量的时间,所以人工解题是,我们不会运用这种方法。而计算机的有一个最大的特点就是运算速度快,这样的运算量对于计算机来说是轻而易举的。利用计算机的这一优势,我们今天来看一下用枚举法来解决“鸡兔同笼”问题。

通过上面对枚举法的算法分析,得出我们所需要的积木模块、变量大致和鸡兔同笼(一)相同,不同之处有以下几点:

1.利用枚举法时需要用到新的运算积木

2.利用枚举法时需要用到控制积木

4.利用枚举法时需要再建一个新的变量“sum”,用来记录每一组鸡兔组合所求得的脚数。这是一个临时变量,随着鸡、兔的数目变化而变化。

具体的解题步骤也同鸡兔同笼(一)中的步骤类似。

我们重点关注一下控制积木模块

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

是一个可以重复执行的积木模块,在这个模块内的积木会按顺序依次执行,执行完最后一个积木后,就会返回到第一个积木继续执行。红色圈内需要用的是运算积木,当运算积木成立时,整个积木模块停止运行。

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

具体到我们这个题目中,每执行一次程序,鸡的数量就会加1,利用公式可以计算出兔的数量,然后计算出sum的值,比较sum和总脚数,如果不等,循环继续;如果相等,则结束循环,此时,我们所看到的变量鸡数和兔数就是我们的答案。

这样,我们利用枚举法解决了鸡兔同笼的问题。

下图中图1是我们编写的程序,图2是运算的结果:

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

图1

冰城少儿编程:Scratch解决鸡兔同笼问题(2)

图2

今天我们用的枚举法算法编写了解决经典的”鸡兔同笼“问题Scratch3.0的程序。通过鸡兔同笼问题的两种不同的解法,相信大家对编程有了新的认识。

之后,我们还会推出一个系列”用Scratch3.0解决小学经典数学问题“。

版权所有:http://wWw.pxcodeS.com

相关文章:

推荐阅读:如何让孩子从小学会坚强?

  • 如何让孩子从小学会坚强?怎样让孩子从小拥有情感韧性呢?如何培养孩子顽强的毅力?做家长的,别太如此心疼孩子!前几天看微博热搜,因为爸爸拒绝买运动鞋,小男孩爬出五楼窗户还拒绝救援,看的我这老心脏也差点漏了拍。屡屡看到娃们的心里承受能力变差,就忍不住怀疑,我们在保护孩子情绪方面是不是有点过分溺爱了呢?孩子总有一天会离开我们,我们不能时时刻刻关照孩子的情绪,不能满足他所有的要求。我想所谓的高心理承受能力之一,就是,在他感到不舒服的场合下如何能够保持良好心态,不走极端。心理学上称之为情感韧性。所以,怎样让孩子从小拥有情感韧性呢?不轻易给他任....>>查看全文

支持一下吧 ( )

文章评论

      匿名评论
    • 评论
    人参与,条评论
    少儿编程网

客服在线

服务时间

周一至周日 9:00-21:00