0
0
0
share
0 Reaksi
0 Komentar
Mengenal Matriks dan Operasinya di Java
Suatu array di Java dapat dibentuk dengan mendefinisikan array dua dimensi. Kemudian kita dapat mengisi setiap elemen secara manual dengan mengakses setiap elemennya. Berikut adalah contohnya:
int matrix[][] = new int[2][2];
matrix[0][0] = 5;
matrix[0][1] = 0;
matrix[1][0] = 2;
matrix[1][1] = 6;
int matrix[][] = new int[3][3];
matrix[0][0] = 5;
matrix[0][1] = 0;
matrix[0][2] = 8;
matrix[1][0] = 2;
matrix[1][1] = 6;
matrix[1][2] = 7;
matrix[2][0] = 2;
matrix[2][1] = 6;
matrix[2][2] = 5;
Di tutorial ini, kita hanya akan membahas operasi dasar matriks seperti penjumlahan, pengurangan, dan perkalian.
Melakukan Akses terhadap Elemen Matriks
Kita dapat memanfaatkan nested loop for untuk mengakses suatu elemen pada koordinat tertentu. Sebagai contoh mari kita lihat source code berikut:Berikut adalah output dari source code tersebut:class DemoSimpleMatrix { public static void main (String[] args){ int matrix[][] = new int[2][2]; matrix[0][0] = 5; matrix[0][1] = 0; matrix[1][0] = 2; matrix[1][1] = 6;
for (int i = 0; i < matrix.length; i++){ for (int j = 0; j < matrix[0].length; j++){ System.out.print(matrix[i][j] + " "); } System.out.println(); } }
}
$ javac DemoSimpleMatrix.java
$ java DemoSimpleMatrix
5 0
2 6
Melakukan Penjumlahan Terhadap Dua Matriks
Untuk melakukan penjumlahan matriks, setiap elemen dari kedua matriks kita jumlahkan kemudian hasilnya menjadi elemen baru suatu matriks. Sebagai contoh berikut adalah source code-nya di Java:Berikut adalah output dari source code tersebut:class DemoAddMatrix { public static void main (String[] args){ int matrix1[][] = new int[2][2]; matrix1[0][0] = 5; matrix1[0][1] = 0; matrix1[1][0] = 2; matrix1[1][1] = 6;
int matrix2[][] = new int[2][2]; matrix2[0][0] = 1; matrix2[0][1] = 0; matrix2[1][0] = 4; matrix2[1][1] = 2; for (int i = 0; i < matrix1.length; i++){ for (int j = 0; j < matrix1[0].length; j++){ int elem = matrix1[i][j] + matrix2[i][j]; System.out.print( elem + " "); } System.out.println(); } }
}
$ javac DemoAddMatrix.java
$ java DemoAddMatrix
6 0
6 8
Melakukan Pengurangan Terhadap Dua Matriks
Untuk melakukan pengurangan matriks, setiap elemen dari kedua matriks kita kurangkan kemudian hasilnya menjadi elemen baru suatu matriks. Sebagai contoh berikut adalah source code-nya di Java:Jika source code kita jalankan, maka akan muncul output seperti berikut:class DemoSubstractMatrix { public static void main (String[] args){ int matrix1[][] = new int[2][2]; matrix1[0][0] = 5; matrix1[0][1] = 0; matrix1[1][0] = 2; matrix1[1][1] = 6;
int matrix2[][] = new int[2][2]; matrix2[0][0] = 1; matrix2[0][1] = 0; matrix2[1][0] = 4; matrix2[1][1] = 2; for (int i = 0; i < matrix1.length; i++){ for (int j = 0; j < matrix1[0].length; j++){ int elem = matrix1[i][j] - matrix2[i][j]; System.out.print( elem + " "); } System.out.println(); } }
}
$ javac DemoSubstractMatrix.java
$ java DemoSubstractMatrix
4 0
-2 4
Melakukan Perkalian Terhadap Dua Matriks
Tidak seperti penjumlahan atau pengulangan matriks, pada perkalian matriks kita membutuhkan dua nested loop untuk melakukan perkalian matriks. Nested loop yang ketiga digunakan untuk melakukan penjumlahan hasil perkalian baris dan kolom suatu matriks. Sebagai contoh berikut adalah source code untuk melakukan perkalian matriks di Java:Berikut adalah output dari source code diatas:class DemoMultiplyMatrix { public static void main (String[] args){ int matrix1[][] = new int[2][2]; matrix1[0][0] = 5; matrix1[0][1] = 0; matrix1[1][0] = 2; matrix1[1][1] = 6;
int matrix2[][] = new int[2][2]; matrix2[0][0] = 1; matrix2[0][1] = 0; matrix2[1][0] = 4; matrix2[1][1] = 2; int matrix3[][] = new int[2][2]; for (int i = 0; i < matrix1.length; i++){ for (int j = 0; j < matrix1[0].length; j++){ int total = 0; for (int k = 0; k < matrix1.length; k++){ total = total + (matrix1[i][k] * matrix2[k][j]); } matrix3[i][j] = total; } } for (int i = 0; i < matrix3.length; i++){ for (int j = 0; j < matrix3[0].length; j++){ System.out.print( matrix3[i][j] + " "); } System.out.println(); } }
}
$ python3 multiply-matrix.py
5 0
26 12
(codepolitan/java/oracle)
0
0
0
share