冰雹猜想-Scratch趣味数学编程系列

冰雹猜想-51scratch
冰雹猜想-Scratch趣味数学编程系列
此内容为付费资源,请付费后查看
9.9
限时特惠
19.9
立即购买
您当前未登录!建议登陆后购买,可保存购买订单
付费资源

什么是冰雹猜想?

1976年的一天,《华盛顿邮报》于头版头条报道了一条数学新闻。文中记叙了这样一个故事:70年代中期,美国各所名牌大学校园内,人们都像发疯一般,夜以继日,废寝忘食地玩弄一种数学游戏。

校园一角
校园一角

这个游戏十分简单:任意写出一个正整数N,并且按照以下的规律进行变换:

如果是奇数,则下一步变成 3N + 1。如果是偶数,则下一步变成 N/2。

不单单是学生,甚至连教师、研究员、教授与学究都纷纷加入 。为什么这种游戏的魅力经久不衰?因为人们发现,无论N是怎样一个数字,最终都无法逃脱回到谷底1。准确地说,是无法逃出落入底部的4-2-1循环,永远也逃不出这样的宿命。

这就是著名的“冰雹猜想” 。

为什么叫冰雹猜想呢?这是因为人们发现在运算过程中的数字起伏变化,忽大忽小,有时候还很剧烈。这就像积雨云中的小雨点,会被猛烈上升的气流带上零度以下的高空,凝固成小冰珠,随着含水汽的上升气流增大,小冰珠逐渐变大,最终变成大冰雹从天而降,砸到地面上,因此人们形象的把这个数学游戏称为“冰雹猜想”。

世界各国研究冰雹猜想的人很多,并给它起了很多名字,如角谷猜想(因为一个名叫角谷的日本人把它传到中国)、3x + 1问题、奇偶归一猜想、克拉茨猜想等。

不过,遗憾的是,这个有趣的数字冰雹至今也无法证明,所以仍然是一个猜想。今天,借助于计算机编程,我们可以很方便的验证冰雹猜想。

编程思路

根据冰雹猜想的规则,对于任何一个给定的自然数,首先需要判断它是奇数还是偶数,也就是看这个数字除以2的余数是否等于0,如果是奇数,将数字设为 3n + 1,如果是偶数,则将数字设为n/2,然后不断的重复这个过程,很显然,这是一个递归程序,那么递归的出口在哪里呢?

无论是怎样一个数字,最终都无法逃脱回到谷底1,所以如果数字等于1,则结束程序。

程序实现

1.定义“冰雹猜想”自制积木

首先,我们要建立“冰雹猜想”自制积木,其代码如图所示:

“冰雹猜想”自制积木
“冰雹猜想”自制积木

注意:为了看清楚这个过程,这里将每次计算得到的数字,存入“日志”列表中。

2.入口程序

接下来编写入口程序,让玩家输入任意数字,调用自制积木验证猜想,其代码如图所示:

入口程序
入口程序

运行效果

Scratch冰雹猜想的运行效果如图所示:

Scratch冰雹猜想效果
Scratch冰雹猜想效果

注意:在查看运行的时候,重点要看保存到“日志”列表中的内容,可以发现最后的数字都是4-2-1。

神奇的27

冰雹的最大魅力在于不可预知性。英国剑桥大学教授John Conway找到了一个自然数27。虽然27是一个貌不惊人的自然数,但是如果按照上述方法进行运算,则它的上浮下沉异常剧烈:首先,27要经过77步骤的变换到达顶峰值9232,然后又经过34步骤到达谷底值1。全部的变换过程需要111步,其顶峰值9232,达到了原有数字27的342倍多,其对比何其惊人!但无论怎样,最终也无法逃脱这个数字黑洞。

© 版权声明
THE END
喜欢就支持一下吧
点赞11赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容