import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1000;i<10000;i++){
int sJZ=i%10+i/10%10+i/100%10+i/1000;
int lJZ=toL(i);
int eJZ=toE(i);
if((sJZ==lJZ)&&(eJZ==lJZ))
System.out.println(i+" ");
}
}
public static int toL(int a){
int i=0,sum=0;
int []aa=new int [100];
do{
aa[i]=a%16;
a/=16;
i++;
}while(a>0);
for(int j=0;j<i;j++){
sum+=aa[j];
}
return sum;
}
public static int toE(int b){
int i=0,sum=0;
int [] bb=new int[100];
do{
bb[i]=b%12;
b/=12;
i++;
}while(b>0);
for(int k=0;k<i;k++){
sum+=bb[k];
}
return sum;
}
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1000;i<10000;i++){
int sJZ=i%10+i/10%10+i/100%10+i/1000;
int lJZ=toL(i);
int eJZ=toE(i);
if((sJZ==lJZ)&&(eJZ==lJZ))
System.out.println(i+" ");
}
}
public static int toL(int a){
int i=0,sum=0;
int []aa=new int [100];
do{
aa[i]=a%16;
a/=16;
i++;
}while(a>0);
for(int j=0;j<i;j++){
sum+=aa[j];
}
return sum;
}
public static int toE(int b){
int i=0,sum=0;
int [] bb=new int[100];
do{
bb[i]=b%12;
b/=12;
i++;
}while(b>0);
for(int k=0;k<i;k++){
sum+=bb[k];
}
return sum;
}
}
本文介绍了一个简单的Java程序,该程序能够遍历1000到9999之间的所有整数,并计算每个数在十进制、四进制和十二进制下的各位数字之和。如果这三个进制下的位数之和相等,则输出该整数。

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



