题目描述
如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。对新产生的正整数再做同样的处理。
如此一来,你会发现,不管开始取的是什么数字,最终如果不是落入1,就是落入同一个循环圈。
请写出这个循环圈中最大的那个数字。
输出
输出答案即可
代码
#include<iostream>
#include<ctime>
#include<cmath>
#include<bits/stdc++.h>
int a[10010],b[10010];
using namespace std;
int main(){
int x=258,y,sum=0;
/*do{
y=0;
while(x){
int temp=x%10;
y+=temp*temp;
x/=10;
}
if(y>sum)
sum=y;
x=y;
cout<<y<<endl;
}while(y!=258);*/
cout<<"145";
return 0;
}
网友评论