我需要生成一个随机10x10数组,然后添加该数组的行和列,因此行元素的总和显示在每行的开头,列元素的总和显示在每列的顶部。有一个简单的方法吗?
以下是代码:
class Sum {
public static void main(String Args[]) {
int row_num = 10;
int col_num = 10;
int[][] arr = new int[row_num][col_num];
int a;
int b;
int row_sum;
int[] col_sum = new int[col_num];
// Generating array
for (a = 0; a < row_num; a++) {
for (b = 0; b < col_num; b++) {
arr[a][b] = (int) (10 * Math.random());
}
}
System.out.println("Array:");
row_sum = 0;
for (a = 0; a < row_num; a++) {
for (b = 0; b < col_num; b++) {
col_sum[b] = col_sum[b] + arr[a][b];
System.out.print(arr[a][b] + " ");
row_sum = row_sum + arr[a][b];
}
System.out.println(" " + row_sum);
row_sum = 0;
}
for (a = 0; a < col_num; a++)
System.out.print(col_sum[a] + " ");
}
}
答案 0 :(得分:0)
感谢您的代码。当我在没有代码的情况下阅读问题时,你比我想象的更近。
我认为更容易的部分是在每行的开头打印行和。您需要将内部for
循环分隔为两个for
循环。目前,内部for
循环都打印数字并对它们求和。相反,做一个只对数字求和的for
循环。然后打印总和。然后第二个for
循环将打印行中的每个数字。
在列上方打印列总和的想法是类似的,只是这次你用两个for循环替换外部 for循环,一个用于求和,一个用于打印数组。看看你是否无法让它沿着这些方向发挥作用(我故意为你留下一些想法)。