2014-01-30 55 views
0

我正在尋找一種方法來合計數組行的元素並獲得總和。我也必須得到專欄的總和。 陣列看起來是這樣的:添加數組的元素(行和列的總和)

 {{45.24, 54.67, 32.55, 25.61}, 
     {65.29, 49.75, 32.08, 26.11}, 
     {25.24, 54.33, 34.55, 28.16}}; 

例如,我想補充45.24,65.29,25.24和獲得列的那部分的總和。然後,我還需要添加其他3列。 同樣適用於行。 我不斷收到有關變量類型的錯誤。有沒有辦法做到這一點?謝謝。

+0

你想要什麼語言? – Prince

+0

爪哇 - 謝謝 – pmcg521

+0

如果有人對此感到困惑,請告訴我如何找到答案。你不需要給我答案。謝謝。 – pmcg521

回答

0

的邏輯將是--->

for(i = 0; i < columns; i++) 
{ 
for(j=0; j<rows; j++) 
{ 
    sum+=arr[j][i]; 
} 
} 

相對來說列

0

假設你有nxn矩陣。這個想法是識別模式

行值

i j 0 0 0 1 0 2

列值

i j 0 0 1 0 2 0

ij的位置值相反。我們假設我們有一個數組a[][]。邏輯將是:

for (int i=0; i<n; i++) { 

    int row = 0, col = 0; 
    for (int j=0; j<n; j++) { 

     row += a[i][j]; 
     col += a[j][i]; 
    } 
    System.out.println("row" + i + " = " + row); 
    System.out.println("col" + i + " = " + col); 
} 

我假設你想每個行和列的總和分開。您可以相應地修改它。

0

我認爲你應該定義你的數組將要處理的數字的類型,如果我使用浮點數,我可以有一些類似下面的類來執行你要求的操作類型的代碼。您還可以添加一些小數格式。

public class Test { 

    public static void main(String[] args) { 
     new Test(); 
    } 

    public Test() { 
     float myarray[][]= { 
      {45.24f, 54.67f, 32.55f, 25.61f}, 
      {65.29f, 49.75f, 32.08f, 26.11f}, 
      {25.24f, 54.33f, 34.55f, 28.16f} 
     }; 

     float row[] = new float[3]; 
     float column[] = new float[4]; 

     for (int i=0; i < 3; i++) { 

      float rowvalue = 0f; 

      for (int j=0; j < 4; j++) { 
       System.out.print(myarray[i][j]+" "); 
       rowvalue+=myarray[i][j]; 
      } 
      row[i]=rowvalue; 

      System.out.println(""); 
     } 

     System.out.println(""); 

     for (int i=0; i < 4; i++) { 

      float colvalue = 0f; 

      for (int j=0; j < 3; j++) { 
       System.out.print(myarray[j][i]+" "); 
       colvalue+=myarray[j][i]; 
      } 
      column[i]=colvalue; 

      System.out.println(""); 
     } 

     System.out.println("Rows answer:"); 
     for (int i=0; i < 3; i++) { 
      System.out.println(row[i]);  
     } 
     System.out.println("Columns answer:"); 
     for (int i=0; i < 4; i++) { 
      System.out.println(column[i]);  
     } 

    } 
}