
#include <iostream>
using namespace std;
int main()
{ int b,c,i,j,A[9],a,k;
for(i=500;i<=987;i++){
if(i<500) a:continue;
if(i/3*3==i){
b=i/3;
c=b*2;
A[0]=i%10;
A[1]=(i/10)%10;
A[2]=i/100;
A[3]=b%10;
A[4]=(b/10)%10;
A[5]=b/100;
A[6]=c%10;
A[7]=(c/10)%10;
A[8]=c/100;
for(j=0;j<=8;j++){
if(A[j]==0) goto a;
for(k=j+1;k<=8;k++){
if (A[j]==A[k]) goto a;
}
}
cout<<b<<" "<<c<<" "<<i<<endl;
}
}
return 0;
}
该程序遍历从500到987之间的整数,检查它们是否能被3整除且其三倍数和两倍数的各位数字不重复。如果满足条件,程序将打印这些数字。这是一个涉及整数操作和数组处理的算法示例。
426

被折叠的 条评论
为什么被折叠?



