Python验证和可视化冰雹猜想、角谷猜想、考拉兹猜想

推荐教材:《中学生可以这样学Python(微课版)》,董付国、应根球,清华大学出版社,ISBN:9787302554639

京东购买链接:

===================

问题描述:

冰雹猜想、角谷猜想、考拉兹猜想说的是同一个问题:给定任意正整数,如果是偶数就除以2,如果是奇数就乘以3再加1,最终总能得到1。

20世纪30年代,德国汉堡大学的学生考拉兹研究过这个问题。1952年一位英国数学家独立发现了它,几年之后又被一位美国数学家所发现。在日本,这个问题最早是由角谷静夫介绍到日本的,所以日本人称它为“角谷猜想”。人们在运算过程中发现,算出来的数字忽大忽小,有的计算过程很长。比如从27算到1,需要112步。有人把演算过程形容为云中的小水滴,在高空气流的作用下,忽高忽低,遇冷结冰,体积越来越大,最后变成冰雹落了下来,而演算的数字最后也像冰雹一样掉了下来,变成了1。因此人们又给这个猜想起了个形象的名字——冰雹猜想。

这个问题的证明方法可以自行查阅资料,本文使用代码生成一些随机数来验证一下。

参考代码:

执行结果:

把上面代码稍微修改一下,绘制水平柱状图,观察几个数字变为1时需要的计算次数:

运行结果(横坐标表示正整数,纵坐标表示正整数变为1所需要的计算次数)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值