水题。略。
附c语言代码:
#include<stdio.h>
int main()
{
int s,n;
int function(int n);
scanf("%d",&n);
s=function(n);
printf("%d",s);
}
int function(int n)
{
int p=0;
while(n>1)
{
if(n%2==0)
{
n=n/2;
p++;
}
else
{
n=(3*n+1)/2;
p++;
}
}
return p;
}
这里用函数看着不太简洁,稍微改一下。
#include<stdio.h>
int main()
{
int s,n,p=0;
int function(int n);
scanf("%d",&n);
while(n>1)
{
n%2==0?(n=n/2):(n=(3*n+1)/2);
p++;
}
printf("%d",p);
}
轻轻松松!!