2017-04-20 78 views
-2
public static void main (String[] args) { 
    int [] numbers = {1,2,3,4,5,6,7,8,9,10}; 
    int sum=0; 
    int sum1=0; 
    for (int i = 0; i < numbers.length; i++){ 
     for (int ii = 0 ; ii < i ; ii--){ 
      sum=sum+=numbers[i];            
     } 
     System.out.println("The sum is " + sum + " "+ sum1); 
    } 

    System.out.print(" "); 

} 

輸入必須等於例如是 {1,2,3},如果我組它分成兩所述第一結果將是1!= 5,以及第二個是3 = 3輸入必須等於

+0

能否請您發佈您的預期產出? – DineshKumar

+0

輸入什麼?這裏沒有太多的輸入。你想達到什麼目的? – gonczor

+0

'sum = sum + = numers [i]'也許你想寫'sum1 = sum + = numbers [i]'?雖然我會高度勸阻這種類型的代碼風格,因爲它不會提高清晰度。 – Turing85

回答

1

它看起來(基於你的例子),就像你想將輸入數組分組成2個子數組並分別求和它們中的每一個,這不是你所做的(你沒有添加任何東西到你的sum1變量)。

for (int i = 0; i < numbers.length; i++){ 
    int sum1 = 0; 
    int sum2 = 0; 
    for (int j = 0; j < i; j++){ 
     sum1+=numbers[j];           
    } 
    for (int j = i; j < numbers.length; j++){ 
     sum2+=numbers[j];           
    } 
    System.out.println("The sums are " + sum1 + " "+ sum2); 
} 

對於輸入數組{1,2,3}您將獲得:

The sums are 0 6 
The sums are 1 5 
The sums are 3 3 

如果你想這兩個羣體是不可空(所以第一個輸出線不會出現),你需要做一個小的變化 - 用int i = 1開始外部循環。

+0

這是我正在嘗試做的一個 – John

相關問題