Πρόγραμμα 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 = multiplyMatrices(firstMatrix, secondMatrix, r1, c1, c2); // Displaying the result displayProduct(product); ) public static int()() multiplyMatrices(int()() firstMatrix, int()() secondMatrix, int r1, int c1, int c2) ( 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); ) ) ) return product; ) public static void displayProduct(int()() product) ( System.out.println("Product of two matrices is: "); for(int() row : product) ( for (int column : row) ( System.out.print(column + " "); ) System.out.println(); ) ) )

Παραγωγή

 Το προϊόν δύο πινάκων είναι: 24 29 6 25 

Στο παραπάνω πρόγραμμα, υπάρχουν δύο συναρτήσεις:

  • multiplyMatrices() που πολλαπλασιάζει τους δύο δεδομένους πίνακες και επιστρέφει τη μήτρα προϊόντος
  • displayProduct() που εμφανίζει την έξοδο του πίνακα προϊόντων στην οθόνη.

Ο πολλαπλασιασμός πραγματοποιείται ως:

| - (ένα 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 _ |

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