Πρόγραμμα Java για πολλαπλασιασμό σε Matrix χρησιμοποιώντας πολυδιάστατες συστοιχίες

Σε αυτό το πρόγραμμα, θα μάθετε να πολλαπλασιάζετε δύο πίνακες χρησιμοποιώντας πολυδιάστατους πίνακες στην Java.

Για να κατανοήσετε αυτό το παράδειγμα, θα πρέπει να γνωρίζετε τις ακόλουθες εφαρμογές προγραμματισμού Java:

  • Πίνακες Java
  • Πολυδιάστατες συστοιχίες Java

Για να γίνει πολλαπλασιασμός μήτρας, ο αριθμός των στηλών του πρώτου πίνακα πρέπει να είναι ίσος με τον αριθμό των σειρών του δεύτερου πίνακα. Στο παράδειγμά μας, δηλαδή

 c1 = r2

Επίσης, η μήτρα του τελικού προϊόντος έχει μέγεθος r1 x c2, δηλαδή

 προϊόν (r1) (c2)

Μπορείτε επίσης να πολλαπλασιάσετε δύο πίνακες χρησιμοποιώντας συναρτήσεις.

Παράδειγμα: Πρόγραμμα πολλαπλασιασμού δύο πινάκων

 public class MultiplyMatrices ( public static void main(String() args) ( int r1 = 2, c1 = 3; int r2 = 3, c2 = 2; int()() firstMatrix = ( (3, -2, 5), (3, 0, 4) ); int()() secondMatrix = ( (2, 3), (-9, 0), (0, 4) ); // Mutliplying Two matrices int()() product = new int(r1)(c2); for(int i = 0; i < r1; i++) ( for (int j = 0; j < c2; j++) ( for (int k = 0; k < c1; k++) ( product(i)(j) += firstMatrix(i)(k) * secondMatrix(k)(j); ) ) ) // Displaying the result System.out.println("Sum of two matrices is: "); for(int() row : product) ( for (int column : row) ( System.out.print(column + " "); ) System.out.println(); ) ) )

Παραγωγή

 Το άθροισμα των δύο πινάκων είναι: 24 29 6 25 

Στο παραπάνω πρόγραμμα, ο πολλαπλασιασμός πραγματοποιείται ως:

| - (ένα 11 xb 11 ) + (ένα 12 xb 21 ) + (ένα 13 xb 31 ) (ένα 11 xb 12 ) + (ένα 12 xb 22 ) + (ένα 13 xb 32 ) - | | _ (ένα 21 xb 11 ) + (ένα 22 xb 21 ) + (ένα 23 xb 31 ) (ένα 21 xb 12 ) + (ένα 22 xb 22 ) + (ένα 23 xb 32_ | 

Στο παράδειγμά μας, λαμβάνει χώρα ως:

| - (3 x 2) + (-2 x -9) + (5 x 0) = 24 (3 x 3) + (-2 x 0) + (5 x 4) = 29 - | | _ (3 x 2) + (0 x -9) + (4 x 0) = 6 (3 x 3) + (0 x 0) + (4 x 4) = 25 _ |

ενδιαφέροντα άρθρα...