x/y==0是不对的,应该是x%y==0;;;;;;;还有sum=0,下边的设置应该在if(sum==x)外边作者: lclxjzz 时间: 2015-4-29 23:39
看看····作者: li514620797 时间: 2015-4-29 23:40
额好好看看吧作者: as12510 时间: 2015-4-30 00:49
利用数组 将每次的结果放进数组
然后利用遍历将数组的数据和求出来和 本身 进行比较
如果相等 就输出 X和对应的每个质数
class Game {
public static void main(String[] args) {
for(int x = 2;x<1000 ; x++){
int[] arr = new int [1000];
int sum = 0;
int index = 0;
int i = 1;
//定义获取每个质数的数组并 依次放入数组内
while(true){
if(x % i == 0 && x != i){
arr[index] = i;
index ++;
i++;
}else if (i>x){
break;
}else {
i++;
}
}
for(int a = 0; a<arr.length ; a++){
sum += arr[a];
}
if (sum == x){
System.out.print(x+"=");
for(int b = 0; b<arr.length ; b++){
if (arr[b]>0){
System.out.print(arr[b]+"+ ");
}
}
System.out.println();
}