#include <stdio.h>
int main()
{
int a, b;
while(scanf("%d",&a) != EOF)
{
b = 0;
while(a != 1)
{
if(a % 2 == 0)
{
a = a / 2;
}
else
{
a = ((3 * a) + 1 ) / 2;
}
b++;
}
printf("%d\n", b);
}
return 0;
}

本文展示了一个基于C语言的程序,该程序用于探索著名的3n+1猜想,也被称为Collatz猜想。通过输入任意正整数,程序将计算并输出达到1所需的步数,遵循如果数字为偶数则除以2,如果为奇数则乘以3再加1的规则。
4509

被折叠的 条评论
为什么被折叠?



