猜想:对于任意大于1的自然数n,若n为奇数,则将n变成3n+1,否则变成n的一半。经过若干次这样的变换,一定会使n变为1。例如3->10->5->16->8->4->2->1。

  • Post author:
  • Post category:其他


#include<bits/stdc++.h>

using namespace std;

int main()

{


int n,i=0;

scanf(“%d”,&n);

while(n!=1)

{


if(n%2==0)

{


n=n/2;

i+=1;

}

if(n==1)

break;

if(n%2==1)

{


n=(3*n+1);

i+=1;

}

}

printf(“%d\n”,i);

return 0;

}



版权声明:本文为DCXYYhyxd原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。