Olá pessoal, eu preciso fazer um programa que leia uma matriz n × m de reais e imprima uma matriz n + 1 × m + 1 formada por todos os elementos lidos e, adicionalmente, a última linha contém as somas de cada coluna e a última coluna contém as somas de cada linha.
Já fiz de várias formas e nunca dá certo! O último que fiz está assim:
Scanner sc = new Scanner(System.in);
int l, c;
System.out.println("Forneça o número de linhas da matriz");
l = sc.nextInt();
System.out.println("Forneça o número de colunas da matriz");
c = sc.nextInt();
double A[][] = new double[l][c], B[][] = new double[l + 1][c + 1];
for (int i = 0; i < l; i++) {
for (int j = 0; j < c; j++) {
System.out.println("Forneça o valor de um elemento da matriz");
A[i][j] = sc.nextDouble();
B[i][j] = A[i][j];
}
}
double somaj = 0;
double somai = 0;
for (int i = 0; i < l; i++) {
for (int j = 0; j < c; j++) {
somaj = somaj + A[i][j];
}
}
for (int i=0; i<(c+1);i++) {
B[l+1][i] = somai;
}
for (int i = 0; i < c; i++) {
for (int j = 0; j < l; j++) {
somai = somai + A[i][j];
}
}
for (int i=0; i<(l+1);i++) {
B[i][c+1] = somai;
}
imprime(B, "matriz B= ");
}
public static void imprime(double[][] X, String n) {
System.out.println(n);
for (int i = 0; i < X.length; i++) {
System.out.print(" | ");
for (int j = 0; j < X[i].length; j++) {
System.out.printf("%9.2f ", X[i][j]);
}
System.out.println(" |");
}
}
}
Alguém poderia me instruir no que posso fazer?