问题描述
一个三位数,各位数字互不相同,十位数字比个位、百位数字之和还要大,且十位、百位数字之和不是质数。桐桐想把符合上述条件的三位数找出来,你能帮助她吗?
输入
无
输出
按照从小到大的顺序,输出满足条件的三位数,每行一个。
样例
输入
输出
编辑代码
语言 C++
代码:
#include <bits/stdc++.h>
using namespace std;
bool f1,f2,f3;
int n,i,s,g,b,sh,t,j,sb;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
for(i=100;i<=999;i++){
t=i;
g=t%10;t=t/10;
sh=t%10;b=t/10;
f1=(g!=sh&&g!=b&&sh!=b);
f2=(sh>g+b);
sb=sh+b;
if(sb==1) f3==0;
else{
f3=1;
for(j=2;j<=sqrt(sb);j++)
if(sb%j==0) f3=0;
}
if(f1&&f2&&!f3) cout<<i<<"\n";
}
}
制作不易,给个一键三连吧!求求了!
如果有更便捷的方法可以在评论区发出来,感激不尽!