Collatz猜想的Java代码
我对Java非常陌生,所以这解释了很多。我想写一个代码,将偶数除以2,直到答案达到1。例如,16>8>4>2>1,将奇数乘以3并加1。但我无法让它计算出达到目标所需的步骤数。也请帮我写一个比我现有的更好的代码Collatz猜想的Java代码,java,Java,我对Java非常陌生,所以这解释了很多。我想写一个代码,将偶数除以2,直到答案达到1。例如,16>8>4>2>1,将奇数乘以3并加1。但我无法让它计算出达到目标所需的步骤数。也请帮我写一个比我现有的更好的代码 package test; import java.util.Scanner; public class Test { public static void main(String[] args){ Scanner n=new Scanner
package test;
import java.util.Scanner;
public class Test {
public static void main(String[] args){
Scanner n=new Scanner(System.in);
int a;
System.out.println("Enter a value");
a=n.nextInt();
System.out.print(+a );
for(;;){
if(a==1){
break;
}
else if(a%2==0){
a=a/2;
System.out.print(a+",");
}
else if(a%2!=0){
a=a*3+1;
System.out.println(a+",");
}
}
}}
“但我无法让它计算到达一个“A计数器”所需的步数?”我无法让它计算步数”--请解释你的意思?为什么不能这样做?注意:
System.out.println(+a)中的+
没有任何作用代码>是否证明每个数字最终都会达到1?例如:16>8>4>2>1程序应该说“16达到1需要4个步骤”。但我无法让它计算达到一个“A计数器”所需的步骤数?我无法让它计算步骤数“请解释一下你的意思?为什么不能这样做?注意:System.out.println(+a)中的+
没有任何作用代码>是否证明每个数字最终都会达到1?例如:16>8>4>2>1程序应该说“16达到1需要4个步骤。