我最近发现了关于3n + 1的问题,并想写一个简单的代码来解决这个问题。 这一切都有效,但在高的奇数如999,999,999它去负数,并重复一个无休止的循环,我不知道为什么。 // if n is odd n = 3n+1
// if n is even n = n/2
while (true)
{
int n;
Console.WriteLine("Enter a po
我试图寻找不到编号的最长Collatz序列,说100,但有,我不能找到一个错误,这使得我的代码崩溃: var longest=0; //holds the biggest m
var m=0; //count of steps for at given n
//in the following, the counter var starts the sequence by giving it
我创建了这个collatz代码,当我运行命令'java collatz 7'时,我的程序在n达到1时不会终止,而是一直重复序列直到StackOverflowError。任何人都可以指出这里有什么问题? THX public class collatz{
public static void collatz(int n){
System.out.println(n+"
我有以下代码 - 用于在Collatz函数的源代码: number = int(input('enter a number')
while number != 1:
if number%2 == 0:
n = number//2
print (str(n))
elif number%2 == 1:
n = 3*number+1