Collatz 序列

简介:

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

#!/usr/bin/env python3
import sys
def collatz(number):
if number == 1:
sys.exit()
elif number % 2 == 0:
number = number // 2
print(number)
collatz(number)
else:
number = 3 * number + 1
print(number)
collatz(number)
number = int(input('please input you want number: '))
a = collatz(number)

本文转自  Forande  51CTO博客,原文链接:http://blog.51cto.com/853056088/2047789

相关文章
|
监控
idea插件报错导致不能启动的处理技巧
在安装IDEA的插件时,难免会遇到插件不合理导致的IDEA启动时报错,没有办法从IDEA的plugins管理面板卸载插件,那怎么办呢? 答:手动删除。查找IDEA的日志C:\Users\{username}\.IntelliJIdea2016.1\system\log\idea.log,启动IDEA并监控该日志行为及报错信息;然后在电脑上安装Everything (该工具可
6282 1
|
IDE 关系型数据库 开发工具
使用Visual Basic进行Windows窗体开发
【4月更文挑战第27天】本文介绍了使用Visual Basic进行Windows窗体(WinForms)开发的步骤,从搭建开发环境到创建、设计用户界面,再到编写事件驱动的代码和数据绑定。Visual Basic结合WinForms提供了一种易学易用的桌面应用开发方案。通过调试、优化、部署和维护,开发者可以构建专业应用程序。随着技术发展,掌握最新UI设计和开发工具对于保持竞争力至关重要。本文为初学者提供了基础指导,鼓励进一步探索和学习。
408 0
|
传感器 人工智能 监控
无人驾驶拖拉机
无人驾驶拖拉机
691 1
|
9月前
|
机器学习/深度学习 并行计算 测试技术
每天五分钟深度学习:解决for循环效率慢的关键在于向量化
向量化是提升计算效率的重要技术,尤其是在处理大规模数据和进行复杂运算时。通过将for循环转换为向量或矩阵运算,向量化能够充分利用底层高效库和现代CPU的并行计算能力,从而大幅提高运算速度。在深度学习中,向量化是实现高效神经网络训练和预测的关键。
224 23
|
10月前
|
网络虚拟化
生成树协议(STP)及其演进版本RSTP和MSTP,旨在解决网络中的环路问题,提高网络的可靠性和稳定性
生成树协议(STP)及其演进版本RSTP和MSTP,旨在解决网络中的环路问题,提高网络的可靠性和稳定性。本文介绍了这三种协议的原理、特点及区别,并提供了思科和华为设备的命令示例,帮助读者更好地理解和应用这些协议。
425 4
|
11月前
|
SQL 存储 关系型数据库
mysql SQL必知语法
本文详细介绍了MySQLSQL的基本语法,包括SELECT、FROM、WHERE、GROUPBY、HAVING、ORDERBY等关键字的使用,以及数据库操作如创建、删除表,数据类型,插入、查询、过滤、排序、连接和汇总数据的方法。通过学习这些内容,读者将能更好地管理和操
223 0
|
12月前
|
机器学习/深度学习 数据采集 算法
机器学习新纪元:用Scikit-learn驾驭Python,精准模型选择全攻略!
在数据爆炸时代,机器学习成为挖掘数据价值的关键技术,而Scikit-learn作为Python中最受欢迎的机器学习库之一,凭借其丰富的算法集、简洁的API和高效性能,引领着机器学习的新纪元。本文通过一个实际案例——识别垃圾邮件,展示了如何使用Scikit-learn进行精准模型选择。从数据预处理、模型训练到交叉验证和性能比较,最后选择最优模型进行部署,详细介绍了每一步的操作方法。通过这个过程,我们不仅可以看到如何利用Scikit-learn的强大功能,还能了解到模型选择与优化的重要性。希望本文能为你的机器学习之旅提供有价值的参考。
168 0
|
人工智能 自然语言处理 PyTorch
Prompt-“设计提示模板:用更少数据实现预训练模型的卓越表现,助力Few-Shot和Zero-Shot任务”
Prompt-“设计提示模板:用更少数据实现预训练模型的卓越表现,助力Few-Shot和Zero-Shot任务”
Prompt-“设计提示模板:用更少数据实现预训练模型的卓越表现,助力Few-Shot和Zero-Shot任务”
|
移动开发 前端开发 JavaScript
构建高效跨平台移动应用:React Native入门指南
【8月更文挑战第31天】 在移动开发领域,React Native凭借其跨平台特性和高效的开发模式赢得了开发者的青睐。本文将通过一个简易的待办事项应用实例,带领读者快速入门React Native,并展示如何利用JavaScript和React框架构建具有原生性能的应用。我们将探讨环境配置、界面布局、状态管理和数据流,以及如何打包和发布您的应用。准备好,让我们开始React Native之旅!
|
机器学习/深度学习 编解码 人工智能
走进 Sora 的世界:视频重建调研与创新路线图
走进 Sora 的世界:视频重建调研与创新路线图
210 0