簡體   English   中英

找到鋸齒狀數組的行的平均值

[英]finding the average of rows of a jagged array

我試圖找到我在鋸齒狀二維數組上的平均行數,我已經將數組打印出來,但平均部分打印出錯誤的平均值。 我的代碼有什么問題?

//print array
        for(int k = 0; k < arr.length; k++{ 
            for(int j = 0; j < arr[k].length; j++) {

             System.out.print(arr[k][j] + " ");             
            }

            System.out.println();
        }
      
 //average

        for (int r = 0; r < arr.length; r++){
            double sum = 0.0;
            double avg = 0.0;
            for (int c = 0; c < arr[r].length; c++){
                sum += arr[r][c];  
                avg = sum / i; // i is the columns of the array;


            }
           
           
        System.out.println("Row " + (row + 1) + " average is: " + avg);
            

        }

與其動態計算平均值,不如在最后只通過移動avg = sum / i;來計算它。 在嵌套循環之外,否則每次循環時它都會除以不正確的值。 也使用avg = sum / arr[r].length; 相反,因為我們確切地知道每行有多少列:

    for (int r = 0; r < arr.length; r++){
        double sum = 0.0;
        for (int c = 0; c < arr[r].length; c++){
            sum += arr[r][c];  
        }
        //Calculate the average outside the nested loop using (sum / columns)
        double avg = avg = sum / arr[r].length;
        System.out.println("Row " + (row + 1) + " average is: " + avg);
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM