/*(1)输入一个正整数n;
(2)如果n=1则结束;
(3)如果n是奇数,则n变为3n+1,否则n变为n/2;
(4)转入第(2)步。*/
#include<stdio.h>
int a[1000]; //全局变量
int hasse(int n) //定义函数
{
if(n==1) return 0;
else
{
if(n%2==1)
{
n=3*n+1;
}
else
{
n=n/2;
}
return (1+hasse(n)); //返回次数
}
}
int main()
{
int n,i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n;i++)
{
printf("%d\n",hasse(a[i])); //调用函数
}
return 0;
}
(2)如果n=1则结束;
(3)如果n是奇数,则n变为3n+1,否则n变为n/2;
(4)转入第(2)步。*/
#include<stdio.h>
int a[1000]; //全局变量
int hasse(int n) //定义函数
{
if(n==1) return 0;
else
{
if(n%2==1)
{
n=3*n+1;
}
else
{
n=n/2;
}
return (1+hasse(n)); //返回次数
}
}
int main()
{
int n,i;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n;i++)
{
printf("%d\n",hasse(a[i])); //调用函数
}
return 0;
}