【PAT】1001

/*项目:对给定的任一不超过1000的正整数n,简单地数一下,需要多少步(砍几下)才能得到n=1?
 *作者:钱金柱
 *日期:2018年4月7日
 */


#include<stdio.h>


int main(void)
{
	int i = 0;
	int n;
	
	scanf("%d", &n);
	
	while(n != 1)
	{
		/*if(n % 2 == 0)
		{
			n = n / 2;
			i += 1;
		}
		else
		{
			n = (3 * n + 1) / 2;
			i += 1;
		}*/
		if(n % 2 == 0)
			n = n / 2;
		else
			n = (3 * n + 1) / 2;
		i ++;
		
	}
	
	printf("%d\n", i);
	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_40597998/article/details/79845698