Python考拉兹猜想输出序列代码实践

yipeiwu_com6年前Python基础

考拉兹猜想(英语:Collatz conjecture),是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。(摘自Wiki)

首先编写一个collatz()函数判定参数(number)奇偶,如果是偶数则返回 number//2;如果是奇数则返回 3*number+1

然后用户输入一个正整数后,对这个数反复调用collatz(),直至打印出1

程序如下:

def collatz(number):
  res=number%2
  if res==0:
    return number//2
  else:
    return number*3+1
 
 
print('请输入一个正整数:',end='')
num=int(input())
sum=collatz(num)
print(sum)
 
while sum!=1:
  sum=collatz(sum)
  print(sum)

测试结果:

请输入一个正整数:3
10
5
16
8
4
2
1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

利用Python-iGraph如何绘制贴吧/微博的好友关系图详解

利用Python-iGraph如何绘制贴吧/微博的好友关系图详解

前言 最近工作中遇到了一些需求,想通过图形化的方式显示社交网络特定用户的好友关系,上网找了一下这方面的图形库有networkx、graphviz等,找了好久我选择了iGraph这个图形库...

浅谈Python中(&,|)和(and,or)之间的区别

浅谈Python中(&,|)和(and,or)之间的区别

(&,|)和(and,or)是两组比较相似的运算符,用在“与”/ “或”上,在用法上有些许区别。 (&,|)和(and,or)是用来比较两组变量的,格式基本上是: a & b a...

pycharm debug功能实现跳到循环末尾的方法

pycharm debug功能实现跳到循环末尾的方法

可以使用条件断点,如图,在断点上右键可以设置,条件自己输入,python语法: 以上这篇pycharm debug功能实现跳到循环末尾的方法就是小编分享给大家的全部内容了,希望能给大家...

利用python代码写的12306订票代码

本文实例讲述了python代码写的12306订票代码,分享给大家供大家参考。 具体实现方法如下: import datetime import json import re impo...

Python对接 xray 和微信实现自动告警

Python对接 xray 和微信实现自动告警

  xray 是什么 xray 是从长亭洞鉴核心引擎中提取出的社区版漏洞扫描神器,支持主动、被动多种扫描方式,自备盲打平台、可以灵活定义 POC,功能丰富,调用简单,支持 Wi...