Python Collatz序列实现过程解析


Posted in Python onOctober 12, 2019

编写一个名为 collatz()的函数,它有一个名为 number 的参数。如果参数是偶数,那么 collatz()就打印出 number // 2, 并返回该值。如果 number 是奇数, collatz()就打印并返回 3 * number + 1。然后编写一个程序, 让用户输入一个整数, 并不断对这个数调用 collatz(), 直到函数返回值1(令人惊奇的是, 这个序列对于任何整数都有效, 利用这个序列,你迟早会得到 1! 既使数学家也不能确定为什么。 你的程序在研究所谓的“Collatz序列”,它有时候被称为“最简单的、 不可能的数学问题”)。

在项目中添加 try 和 except 语句,检测用户是否输入了一个非整数的字符串。正常情况下, int()函数在传入一个非整数字符串时,会产生 ValueError 错误,比如 int('puppy')。在 except 子句中,向用户输出一条信息,告诉他们必须输入一个整数。

示例代码:

def collatz(number):
 a = number % 2
 if a == 0:
  number = number//2
  return number
 elif a == 1:
  number = number*3+1
  return number
try:
 number = int(input("请输入一个整数:"))
 while number != 1:
  number = collatz(number)
  print(number)
except ValueError:
 print('必须输入整数')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python计算最大优先级队列实例
Dec 18 Python
从零学Python之入门(三)序列
May 25 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
Dec 15 Python
Python 批量合并多个txt文件的实例讲解
May 08 Python
Python requests发送post请求的一些疑点
May 20 Python
python 解压pkl文件的方法
Oct 25 Python
python实现整数的二进制循环移位
Mar 08 Python
Django框架搭建的简易图书信息网站案例
May 25 Python
tensorflow 自定义损失函数示例代码
Feb 05 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
Jun 02 Python
Python使用windows设置定时执行脚本
Nov 12 Python
Python django中如何使用restful框架
Jun 23 Python
python logging日志模块原理及操作解析
Oct 12 #Python
Python爬虫之urllib基础用法教程
Oct 12 #Python
python 生成器和迭代器的原理解析
Oct 12 #Python
python 表格打印代码实例解析
Oct 12 #Python
Django+uni-app实现数据通信中的请求跨域的示例代码
Oct 12 #Python
python3.7将代码打包成exe程序并添加图标的方法
Oct 11 #Python
python 多进程并行编程 ProcessPoolExecutor的实现
Oct 11 #Python
You might like
备份mysql数据库的php代码(一个表一个文件)
2010/05/28 PHP
php中去除所有js,html,css代码
2010/10/12 PHP
php生成数字字母的验证码图片
2015/07/14 PHP
php进行ip地址掩码运算处理的方法
2016/07/11 PHP
Yii2.0 Basic代码中路由链接被转义的处理方法
2016/09/21 PHP
jquery中ajax调用json数据的使用说明
2011/03/17 Javascript
js页面滚动时层智能浮动定位实现(jQuery/MooTools)
2011/08/23 Javascript
引用外部js乱码问题分析及解决方案
2013/04/12 Javascript
jquery 漂亮的删除确认和提交无刷新删除示例
2013/11/13 Javascript
jQuery移除元素自动解绑事件实现思路及代码
2014/05/31 Javascript
如何判断微信内置浏览器(通过User Agent实现)
2014/09/01 Javascript
JS JQUERY实现滚动条自动滚到底的方法
2015/01/09 Javascript
jQuery实现当前页面标签高亮显示的方法
2015/03/10 Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
2015/07/27 Javascript
Java框架SSH结合Easyui控件实现省市县三级联动示例解析
2016/06/12 Javascript
早该知道的7个JavaScript技巧
2016/06/21 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
Bootstrap CSS组件之面包屑导航(breadcrumb)
2016/12/17 Javascript
ng2学习笔记之bootstrap中的component使用教程
2017/03/09 Javascript
Javascript中字符串相关常用的使用方法总结
2017/03/13 Javascript
Python笔记(叁)继续学习
2012/10/24 Python
解决pandas中读取中文名称的csv文件报错的问题
2018/07/04 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
python三大神器之fabric使用教程
2019/06/10 Python
Python中最好用的命令行参数解析工具(argparse)
2019/08/23 Python
pandas按行按列遍历Dataframe的几种方式
2019/10/23 Python
Python类继承和多态原理解析
2020/02/05 Python
PyInstaller的安装和使用的详细步骤
2020/06/02 Python
canvas实现俄罗斯方块的方法示例
2018/12/13 HTML / CSS
美国知名的女性服饰品牌:LOFT(洛芙特)
2016/08/05 全球购物
马来西亚与新加坡长途巴士售票网站:BusOnlineTicket.com
2018/11/05 全球购物
Club Monaco加拿大官网:设计师男女服装
2019/09/29 全球购物
2015年元宵节活动总结
2015/02/06 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
JavaScript使用canvas绘制坐标和线
2021/04/28 Javascript
PostgreSQL13基于流复制搭建后备服务器的方法
2022/01/18 PostgreSQL