0
已解决
李致远
高级光能
高级光能
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
long long n,cnt=0,m=3,k=1,s=2;
cin>>n;
while(n!=1){
if(n%2!=0){
int ans=n*m+k;
printf("%d*%d+%d=%d\n",n,m,k,ans);
n=ans;
}
else{
int ans=n/s;
printf("%d/%d=%d\n",n,s,ans);
n=ans;
}
}
cout<<"END";
return 0;
}
1031 千变万化总是“1”
题目描述 Description
数字“1”是所有正整数的伊始,给人以无限的遐想。任何一个正整数,不管千变万化,通过一定的运算规则,总可以得到1。其规则如下:每一个正整数,如果它是奇数,则对它乘 3 再加 1,如果它是偶数,则对它除以 2,如此循环,最终都能够得到 1,故又称为3n+1 猜想。
本题要求输入任意一个正整数,将经过千变万化得到1的过程输出出来。
输入描述 Input Description
输入为一个正整数n(n≤2000000)。
输出描述 Output Description
输出从整数n经过千变万化得到1的过程,每一步单独为一行,每一行中显示该步的计算公式,并在最后一行输出"End"。如果输入为1,则直接输出"End"即可(数字与符号之间没有空格)。
样例输入 Sample Input
3
样例输出 Sample Output
3*3+1=10
10/2=5
5*3+1=16
16/2=8
8/2=4
4/2=2
2/2=1
End
0分?????