2017-01-23 80 views
-1

當我嘗試計算多個數字的總和時,我得到的數據不正確。而不是大的結果,PROGRAMM顯示小號碼,如:2 = 100,也不能SUMM,因爲過去的數倍2是98如何計算數字2,3,5和7的總和?

public class Array { 
    public static void main(String[] args){ 
     multipleNums(); 
    } 

    static void multipleNums(){ 
     int i = 0; 
     int multTwo = 0; 
     int multThree = 0; 
     int multFive = 0; 
     int multSeven = 0; 

     int summTwo = 0; 
     int summThree = 0; 
     int summFive = 0; 
     int summSeven = 0; 

     for(i = 0; i <= 100; i++){ 
     if(i == 0){  
      System.out.println("0 multiple 0"); 
     }else if(i%2 == 0){ 
      System.out.println(i + " multiple 2"); 
      summTwo = i + multTwo; 

     }else if(i%3 == 0){ 
      System.out.println(i + " multiple 3"); 
      summThree = i + multThree; 

     }else if(i%5 == 0){ 
      System.out.println(i + " multiple 5"); 
      summFive = i + multFive; 

     }else if(i%7 == 0){ 
      System.out.println(i + " multiple 7"); 
      summSeven = i + multSeven; 
     } else { 
      System.out.println(i); 
     } 
     } 
     System.out.println(); 
     System.out.println("SUMM OF 2 " + summTwo); 
     System.out.println("SUMM OF 3 " + summThree); 
     System.out.println("SUMM OF 5 " + summFive); 
     System.out.println("SUMM OF 7 " + summSeven); 
    } 
} 
+0

恕我直言,你用最好的工具解決這個問題就是你的調試器。 – Bathsheba

+3

您認爲'mult *'變量的作用是什麼?那麼如果數字可以被多個數字整除呢? –

+1

不知道'mult *'變量的目的是什麼(它們保持爲0),但爲了求和,使用summTwo + = i,而不是summTwo = i; – Eran

回答

1

你一直在增加multTwomultThree等,這些0 。你應該改變你的代碼中使用sumXY += i

0

更改線路
summTwo = i + multTwo;

summTwo += i ;
其他變量,3,5,7做..