循环3n加1问题

package 第二章;


import java.util.Scanner;
//int 32位整数
/*
 * 猜想:对于任意大于一的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半 经过若干次变换 一定会使n变为1.
 * 例如,
 * 3->10->5->16->8->4->2->1
 * 输入n,输出变换次数。n<=10的九次方
 * 样例输入:
 * 3
 * 样例输出:
 * 7
 * */
public class 循环3n加1问题 {


public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
//注意数据类型的大小
long n= in.nextLong();
int count=0;
while(n>1) {
if(n%2==0) {
n=n/2;
}
else {
n=3*n+1;
}
count++;
}
System.out.println(count);
}


}
全部评论

相关推荐

06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
面向对象的火龙果很爱...:去吃一顿炸鸡就走
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务