问题描述
对于任意大于1的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半。经过若干次的这样的变换,一定会使n变为1. 输入n,输出变换的次数。
实现代码
#include
<stdio.h>
int main(){
int n2
, count
= 0;
scanf("%d", &n2
);
long long n
= n2
;
while(n
> 1){
if(n
% 2 == 1){
n
= n
*3 + 1;
}else{
n
= n
/ 2;
}
count
++;
}
printf("%d\n", count
);
return 0;
}
转载请注明原文地址:https://blackberry.8miu.com/read-2140.html