“考拉兹猜想”是一个数学上的未解之谜。

考拉兹猜想

对自然数 n 循环执行如下操作。

n 是偶数时,用 n 除以 2

n 是奇数时,用 n 乘以 3 后加 1

如此循环操作的话,无论初始值是什么数字,最终都会得到 1(会进入1 → 4 → 2 → 1 这个循环)。

这里我们稍微修改一下这个猜想的内容,即假设初始值为偶数时,也用 n 乘以 3 后加 1,但只是在第一次这样操作,后面的循环操作不变。而我们要考虑的则是在这个条件下最终又能回到初始值的数。

譬如,以2为初始值,则计算过程如下。

2 → 7 → 22 → 11 → 34 → 17 → 52 → 26 → 13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2

同样,如果初始值为4,则计算过程如下。

4 → 13 → 40 → 20 → 10 → 5 → 16 →8 → 4

但如果初始值为6,则计算过程如下,并不能回到初始值6。

6 → 19 → 58 → 29 → 88 → 44 → 22 → 11 → 34 → 17 → 52 → 26 → 13 →40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1 → 4 → …

问题

求在小于 10000 的偶数中,像上述的 2 或者 4 这样“能回到初始值的数”有多少个。

package main

import "fmt"

func collatz(n int)bool{

m := n * 3 + 1

for{

if m == 1{

return false

}else if m == n{

return true

}

if m % 2 == 1{

m = m * 3 + 1

}else if m % 2 == 0{

m = m / 2

}

}

}

func main(){

var s []int

for i:=2;i<10001;i+=2{

if collatz(i){

s = append(s, i)

}

}

fmt.Println(s)

fmt.Printf("共 %d 个数\n", len(s))

}

结果:

[2 4 8 10 14 16 20 22 26 40 44 52 106 184 206 244 274 322 526 650 668 790 866 976 1154 1300 1438 1732 1780 1822 2308 2734 3238 7288]

共 34 个数

本来用递归函数,发现有些麻烦,就用了for循环,发现很容易就搞定了,只需注意跳出循环的条件设计就好。

python考拉兹猜想_考拉兹猜想的变体相关推荐

  1. python证明冰雹猜想_如果冰雹猜想被证明了。那数学会有很大突破吗?

    建议不要在社交软件评论区讨论数学[数学狂]最容易理解的数学未解之谜 -- 克拉茨猜想_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com 克拉茨猜想or冰雹猜想 结合 ...

  2. python工程师需要考什么证_考垃圾处理清运工程师证哪里颁发的今年的考试时间即将告知...

    考垃圾处理清运工程师证哪里颁发的今年的考试时间即将告知 二.中级会计师(会计师)资格考试.三.高级会计师资格考试.四.中级会计师资格考试.五.注册税务师职称.六.注册公司登记.七.注册会计师.法人和其 ...

  3. java证明角谷猜想_角谷猜想证明

    摘要: 本文应用反证法,通过黑洞数唯1,3x+1必唯1,证明3x+1猜想成立. 关键词: 角谷猜想 黑洞 一."角谷猜想"概念 "角谷猜想"又称"冰雹 ...

  4. python验证角谷_角谷猜想-随心随性无为而为-51CTO博客

    问题描述: 角谷猜想的内容为:任意给定一个自然数,若它为偶数则除以2,若它为奇术则乘3加1,得到一个新的自然数.按照这样的计算方法计算下去,若干次后得到的结果必然为1. 编写程序对角谷猜想的正确性加以 ...

  5. python证明冰雹猜想_关于冰雹猜想的证明

    冰雹猜想是指:一个正整数x,如果是奇数就乘以3再加1,如果是偶数就析出偶数因数2ⁿ,这样经过若干个次数,最终回到1. 以N=9为例进行说明: 9×3+1=28,28÷2=14,14÷2=7,7×3+1 ...

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

    推荐教材:<中学生可以这样学Python(微课版)>,董付国.应根球,清华大学出版社,ISBN:9787302554639 京东购买链接: =================== 问题描述 ...

  7. Python验证和可视化之三大猜想 [ 冰雹猜想、角谷猜想、考拉兹猜想 ]

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 本篇文章来自腾讯云 作者:Python小屋屋主 ( 想要学习Python?Pyth ...

  8. 17.4.8.3n+1猜想、考拉兹猜想

    了解 3n+1 猜想 Problem E: 六队-Guess the maximum and minimum Description ​ Utopian发现了一个很有趣的数字游戏. 任意给定一个自然数 ...

  9. python报考软考哪个比较好_软考中级哪个好考

    由于软考分初.中.高三个等级,每个等级的考试科目不一样.所以很多预备报考的朋友在备考时不清楚自己可以考哪个等级,是不是需要从初级到高级逐级报考? 那么软考可以直接考中级吗?软考中级哪个好考呢? 一.软 ...

  10. 视频教程-2020年软考信息安全工程师_基础知识精讲软考视频培训课程-软考

    2020年软考信息安全工程师_基础知识精讲软考视频培训课程 河北师范大学软件学院优秀讲师,项目经理资质,担任操作系统原理.软件工程.项目管理等课程教学工作.参与十个以上百万级软件项目管理及系统设计工作 ...

最新文章

  1. 上海居民被垃圾分类逼疯!这款垃圾自动分类器也许能帮上忙
  2. ASIC开发设计流程
  3. 管理软件预警通知(Notification)功能的实现案例分析
  4. [转载]从12306谈起验证码的架构
  5. Ubuntu建立和删除用户
  6. 3.5.5 CSMA/CD 协议
  7. 魔幻的“净醛产品”:宜家被罚“亡羊”,欧派用视频“补牢”?
  8. c# 字符串中多个连续空格转为一个空格
  9. winxp不加载oracle服务器,WinXP系统开机提示“windwos不能加载用户的配置文件”怎么办...
  10. 工业无线遥控器 SUNRF-1011RC
  11. 使用 hexo-git-backup 插件备份你的 Hexo 博客
  12. C语言综合期末作业,内蒙古农业大学2010年期末c语言综合作业.doc
  13. LeetCode 1026. 节点与其祖先之间的最大差值(二叉树DFS)
  14. python 百度ocr识别_Python使用百度Ocr识别文字保存CSV
  15. drawpolygon收尾不连接_门窗施工全流程,80%的设计师都不了解!
  16. 一文带你看网络协议之因特网中的转发和编址! | 原力计划
  17. Spring AOP、拦截器、过滤器的区别
  18. 【群晖】VMM安装ubuntu虚拟机+Jenkins
  19. python打印乘法口诀表
  20. 十个程序员必备的网站推荐

热门文章

  1. 贸易情报,下一代开拓海外市场的工具,免费在线体验
  2. 电脑连接热点无internet访问权限_电脑连接手机热点时出来无internet安全是什么意思?...
  3. heka 配置 一个go语言实现轻量级logstash 干掉ELK
  4. [CyanogenMOD移植教程]第一章:环境的搭建
  5. python预测身高 青少年编程电子学会python编程等级考试一级真题解析2021-12
  6. Spring Boot系列——日志配置
  7. scipy csc csr到底是什么东西
  8. Qt 之 自定义窗口标题栏
  9. 科学计算机反导按键,backspace是哪个键?最实用按键的大 揭秘
  10. python win32gui模块详解_Python笔记_第二篇_基本功_4.常用模块的简单使用_窗体控制模块(win32con、win32gui)...