角谷定理:输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。

如:输入22,

输出 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1

STEP=16

/*@西安科技大学软工1702

*@author 侯明会

*@JAVA

*/

package kakutani;

import java.util.Scanner;

public class KakutaniTest {

public static int Count(int num,int steps) {

int step=steps;//代表所需步数

step++;

System.out.println(num);

if(num!=1) {

if(num%2==0) {

step=Count(num/2,step);

}else {

step=Count(num*3+1,step);

}

}

return step;

}

public static void main(String[] args) {

Scanner in=new Scanner(System.in);

System.out.println("请输入数据:");

int num=in.nextInt();

int STEP;

System.out.println("递归算法如下:");

STEP=Count(num,0);

System.out.println("得到自然数1的次数为:"+STEP);

System.out.println("非递归算法如下:");

STEP=1;//代表所需步数

while(num!=1) {

if(num%2==0) {

num=num/2;

}else {

num=num*3+1;

}

System.out.println(num);

STEP++;

}

System.out.println("得到自然数1的次数为:"+STEP);

}

}

运行结果为:

角谷定理python每次输出数_角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。...相关推荐

  1. 角谷定理python每次输出数_角谷定理C++递归问题,求问步数为什么总输出0?

    匿名用户 1级 2014-06-13 回答 源代码如下: / /斐波那契序列比较算法项目N个程序,用VC + +6.0编译通过 #包括 >长FIB1(INT N); 长fib2(INT N); ...

  2. Java解决角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。

    一.题目分析 2.角谷定理.输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1.经过如此有限次运算后,总可以得到自然数值1.求经过多少次可得到自然数1. 分析:假设一个数为n,定义一个 ...

  3. 角谷定理。输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。求经过多少次可得到自然数1。

    角谷定理:输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1.经过如此有限次运算后,总可以得到自然数值1.求经过多少次可得到自然数1. 如:输入22, 输出 22 11 34 17 5 ...

  4. C++解角谷定理:输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1。经过如此有限次运算后,总可以得到自然数值1。若输入自然数为1,则不需要运算,运算次数为1(用循环和递归分别实现)

    角谷定理 题目描述 角谷定理:输入一个自然数,若为偶数,则把它除以2,若为奇数,则把它乘以3加1.经过如此有限次运算后,总可以得到自然数值1. 现在请你编写C++程序求经过多少个数可得到自然数1.如: ...

  5. ACMNO.25 C语言-间隔输出 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出1 9 9 0。 输入 一个四位数 输出 增加空格输出

    题目描述 写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格.如输入1990,应输出"1 9 9 0". 输入 一个四位数 输出 增加空格输出 样例输入 199 ...

  6. python十进制转换其他进制直到输入q结束,python二进制转换,python将十进制转为二进制,题目描述:输入一个整...

    python二进制转换,python将十进制转为二进制,题目描述:输入一个整 题目描述: 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 分析: python没有unsignedin ...

  7. (C语言)验证哥德巴赫猜想,输入一个大于6的偶数,输出这个数能被分解为哪两个质数的和

    (C语言)验证哥德巴赫猜想,输入一个大于6的偶数,输出这个数能被分解为哪两个质数的和,如10=3+7,12+5+7. // 质数:除了1和自身,不能被任何数整除的数 #include<stdio ...

  8. python xlsxwriter行数_使用python库xlsxwriter库来输出各种xlsx文件的示例

    功能性的文章直接用几个最简单的实现表达: xlsxwriter库的核心就是其Workbook对象. 创建一个指定名字的xlsx文件: import xlsxwriter filename = '/Us ...

  9. python从键盘输入一个数、判断其是奇数还是偶数_从键盘上输入一个整数,判断该数是奇数还是偶数并输出结果...

    C语言:从键盘上输入一个整数,计算整数的各位数字之和 #includeintGetNumber(intn)//用递归来实现很简单{intsum=0;if(n/10!=0){\x09sum+=GetNu ...

最新文章

  1. 利用OWC创建图表的完美解决方案
  2. 可能 delphi7 下稳定的最后一版本 GDIPLUS
  3. HALCON示例程序classify_citrus_fruits.hdev应用常规gmm分类器进行水果分类
  4. 引入外部机构需要注意的事项_如何与外部营销机构合作
  5. 2015某大型电商集团的前端实习生在线笔试题(无耻的拿来偷看了)
  6. php框架原理 php初识,初识 PHP 7 源码整体框架
  7. Visual C++学习总结——进程或线程与指定CPU绑定
  8. 好看的php表格样式,HTML5制作表格样式
  9. Linux中tar压缩命令详解
  10. 教你几个白嫖百度文库的方法,亲测可用!建议收藏!
  11. 华为手机电源键不止锁屏关机那么简单!这些操作不能浪费,望周知
  12. 【IoT毕业设计】树莓派开发板+机智云IoT+监测机器人
  13. 2018福大软工实践第十二次作业
  14. C++编译器优化:Copy Elision
  15. STARK/SNARK加速小技巧
  16. html中加hover啥意思,css中hover是什么意思
  17. 服务器重装系统鼠标没反应,重装系统鼠标键盘不能用怎么解决-重装系统鼠标键盘失灵的解决方法 - 河东软件园...
  18. CC00389.CloudKubernetes——|KuberNetesCI/CD.V27|——|Jenkins.v07|自动构建NodeJs应用.v01|
  19. cisco IOS,nexus和Arista 的vrrp
  20. Epidemic and Clinic

热门文章

  1. BZOJ 1001 狼抓兔子(Dijkstra)
  2. 超市微信小程序怎么做_新手如何制作一个超市小程序?能发挥什么作用?
  3. 短视频剪辑工作的基本制作流程有哪些环节?
  4. 基于鸿蒙操作系统的爱若琉璃(蜂鸣器版本)
  5. process_exporter部署
  6. CSS最终篇---天猫一角
  7. html固定悬浮窗效果,javascript实现的固定位置悬浮窗口实例
  8. 国潮邂逅养生,七天素养助你开启新中式健康生活
  9. vscode 插件-better comments-代码注释高亮
  10. 天津博物馆镇馆之宝——玉壶春瓶