教教我
  • 板块学术版
  • 楼主YOUNGER_Chen
  • 当前回复1
  • 已保存回复3
  • 发布时间2023/12/26 20:49
  • 上次更新2023/12/27 11:15:42
查看原帖
教教我
1110829
YOUNGER_Chen楼主2023/12/26 20:49

所谓角谷猜想,是指对于任意一个正整数,如果是奇数,则乘3加1,如果是偶数,则除以2,得到的结果再按照上述规则重复处理,最终总能够得到1。如,假定初始整数为5,计算过程分别为16、8、4、2、1。 请编程,验证角谷猜想。

样例输入:

5

样例输出:

5*3+1=16

16/2=8

8/2=4

4/2=2

2/2=1

End

#include <iostream>
#include <math.h>
using namespace std;
int main() {
    long long n;
    cin>>n;
	if(n==1)cout<<"1=1"<<endl;
    while(n!=1){
    if (n%2==0){
        cout<<n<<"/2="<<n/2<<endl;
        n=n/2;
    }
    else{
        cout<<n<<"*3+1="<<n*3+1<<endl;
        n=n*3+1;
    }
    }
    cout<<"End";
	return 0;
}

麻烦大家教教我

2023/12/26 20:49
加载中...