问题描述:
对于每一个大于1的正整数,如果它是奇数,则将其乘3加1,如果它是偶数,则将除以2,如此循环,最终将得到1。输出数据包含从这个整数到1的按照叙拉古猜想变换的序列,每行一个数字。
#include <stdio.h>
int main()
{
int a;
scanf("%d",&a);
while(1)
{
if( a%2 == 0 )
{
a = a / 2;
printf("%d\n",a);
}
if( a%2 != 0 )
{
a = a * 3 + 1;
printf("%d\n",a);
}
if( a == 1 ) break;
}
return 0;
}