角谷猜想,是由日本数学家角谷静夫发现,是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。例如:3,计算过程为:
3*3+1=10;10/2=5;5*3+1=16;16/2=8;8/2=4;4/2=2;2/2=1。
请你设计一道灵活变通的程序,提升思维,任意给一个数n,把这个计算的结果及过程,用程序完美展现出来。
样例输入 Copy
<span style="background-color:#ffffff"><span style="color:#333333"><span style="color:#333333"><span style="background-color:#f5f5f5">3</span></span></span></span>
样例输出 Copy
<span style="background-color:#ffffff"><span style="color:#333333"><span style="color:#333333"><span style="background-color:#f5f5f5">3*3+1=10
10/2=5
5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1</span></span></span></span>
以下是程序
#include<bits/stdc++.h>
using namespace std;
long long n;
int main()
{
cin>>n;
while(n!=1)
{
if(n%2==0)
{
printf("%d/2",n);
n=n/2;
}
else
{
printf("%d*3+1",n);
n=n*3+1;
}
if(n==1)printf("=%d",n);
else printf("=%d\n",n);
}
return 0;
}
scanf小知识:
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h>。(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令)它是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。
求点赞+关注!!