分解质因数以及各位相加
//smith数
#include<bits/stdc++.h>>
using namespace std;
int fenli(int n){
int a=n;
int sum=0;
while(a){
sum+=a%10;
a/=10;
}
return sum;
}
int main(){
int n;
while(cin>>n&&n!=0){
int s2=0;
int s1=fenli(n);
for(int i=2;n!=1;){ // 注意条件,不能写成i<sqrt(n),因为n一直在变
if(n%i==0)
{
s2+=fenli(i);
n/=i;
}
else i++;
}
if(s1==s2) cout<<"yes"<<endl;
else cout<<"no"<<endl;
}
return 0;
}
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/100204.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...