J'ai un tableau 2D 4x4 qui a déjà des valeurs dans chaque index. Je veux avoir une fonction qui calcule la somme d'une ligne/colonne du tableau et le stocke dans la première/dernière colonne et que les autres index reviennent à 0.Comment puis-je trouver la somme des valeurs d'un tableau multidimensionnel et remplacer les valeurs des index inutilisés?
Voici ce que je dois rendre mon tableau:
public static void print2Darray(int[][] numbers) {
for (int i = 0; i < numbers.length; i++) {
for (int j = 0; j < numbers.length; j++) {
System.out.print(numbers[i][j]);
System.out.print("\t");
}
System.out.println();
}
}
qui affiche quelque chose comme ceci:
10 15 30 40
15 5 8 2
20 2 4 2
1 4 5 0
Actuellement c'est la fonction que j'ai:
public static void sumLeft(int[][] numbers) {
for (int i = 0; i < numbers.length; i++) {
numbers[i][0] = (numbers[i][0] + numbers[i][1] + numbers[i][2] + numbers[i][3]);
if (i == 3) {
numbers[0][1] = 0;
numbers[0][2] = 0;
numbers[0][3] = 0;
numbers[1][1] = 0;
numbers[1][2] = 0;
numbers[1][3] = 0;
numbers[2][1] = 0;
numbers[2][2] = 0;
numbers[2][3] = 0;
numbers[3][1] = 0;
numbers[3][2] = 0;
numbers[3][3] = 0;
}
}
}
qui fait cela:
95 0 0 0
30 0 0 0
28 0 0 0
10 0 0 0
Je veux juste trouver un algorithme qui le faire sans « tricher » ou tout simplement le piratage de mon chemin à travers elle.
'i ++' vs '++ j'? Bien sûr, ils font de même, mais la cohérence est une bonne chose dans la programmation * (à mon avis, au moins) *. – Andreas
On dirait que deux personnes pensent de cette façon et l'autre dans une autre. 2 vs 1. – egorlitvinenko
@Andreas mémoire musculaire pour le code que je me suis tapé ... –