Program Perkalian Matriks Bahasa C
|Program Perkalian Matriks Bahasa C – Hallo sobat kopi coding, pada postingan kali ini kita akan mempelajari bagaimana cara membuat program menghitung perkalian matriks di bahasa pemograman C.
Matriks merupakan kumpulan-kumpulan bilangan yang disusun secara baris (vertikal) dan kolom (horizontal) bisa disebut juga array dua dimensi (multi-dimensional). Perkalian matriks memiliki syarat yaitu jumlah kolom matriks pertama sama dengan jumlah baris matriks kedua.
Yuk langsung saja kita lihat source code dan penjelasan program perkalian matriks di bahasa pemograman C..
Program Perkalian Matriks Bahasa C
Source Code :
#include <stdio.h> int main() { int matriks1[10][10], matriks2[10][10], hasil[10][10]; int i, j, k, m, n, p, q, jumlah = 0; printf("Masukkan jumlah baris matriks pertama: "); scanf("%d",&m); printf("Masukkan jumlah kolom matriks pertama: "); scanf("%d",&n); printf("Masukkan jumlah baris matriks kedua: "); scanf("%d",&p); printf("Masukkan jumlah kolom matriks kedua: "); scanf("%d",&q); if(n != p){ printf("Matriks tidak dapat dikalikan satu sama lain.\n"); } else { printf("Masukkan elemen matriks pertama: \n"); for(i = 0; i < m; i++){ for(j = 0; j < n; j++){ scanf("%d", &matriks1[i][j]); } } printf("Masukkan elemen matriks kedua: \n"); for(i = 0; i < p; i++){ for(j = 0; j < q; j++){ scanf("%d", &matriks2[i][j]); } } for(i = 0; i < m; i++){ for(j = 0; j < q; j++){ for(k = 0; k < p; k++){ jumlah = jumlah + matriks1[i][k] * matriks2[k][j]; } hasil[i][j] = jumlah; jumlah = 0; } } printf("Hasil perkalian matriks: \n"); for(i = 0; i < m; i++){ for(j = 0; j < q; j++){ printf("%d\t", hasil[i][j]); } printf("\n"); } } return 0; }
Simpan source code dengan nama perkalianmatriks.c, tetapi sesuaikan aja dengan nama file yang dinginkan dan jangan lupa harus berektensi .c
Penjelasan :
Berikut adalah penjelasan source code programnya :
- Baris 4 : mendeklarasikan variable matriks1[10][10], matriks2[10][10], dan hasil[10][10], yang merupakan array dua dimensi yang memiliki maksimal panjang atau ukurun array baris dan kolom sebanyak 10
- Baris 5 : mendeklarasikan variable i, j, k, m, n, p, q, jumlah, dimana variable i digunakan untuk perulangan baris, variable j untuk perulangan kolom, variable k untuk perulangan operasi perkalian, variable m untuk jumlah baris matriks1, variable n untuk jumlah kolom matriks1, variable p untuk jumlah baris matriks2, variable q untuk jumlah kolom matriks2, dan variable jumlah untuk nilai hasil operasi perkalian.
- baris 6 – 9 : menginputkan nilai ke dalam variable m dan n.
- baris 11 – 14 : menginputkan nilai ke dalam variable p dan q.
- baris 16 – 17 : pengecekan kondisi jika variable n (jumlah kolom matriks1) tidak sama dengan variable p (jumlah baris matriks 2) maka akan menampilkan pesan tidak dapat melakukan perkalian matriks.
- baris 20 – 25 : melakukakan perulangan m (baris) dan n (kolom) untuk menginputkan elemen matriks di variable matriks1.
- baris 27 – 32 : melakukakan perulangan p (baris) dan q (kolom) untuk menginputkan elemen matriks di variable matriks2.
- baris 34 – 42 : melakukan perulangan i sebanyak jumlah m, lalu didalamnya melakukan perulangan j sebanyak jumlah q, kemudian didalamnya melakukan perulangan k sebanyak p dimana varible jumlah diisikan nilai hasil operasi perkalian. setelah perulangan k maka variable hasil[i][j] diisikan dengan nilai variable jumlah dan variable jumlah di set ulang menjadi nol.
- baris 44 – 50 : melakukakan perulangan sebanyak jumlah m (baris) dan n (kolom) untuk menampilkan nilai hasil operasi perkalian matriks.
Compile & Run :
Berikut adalah cara meng-compile source code bahasa C secara manual:
$ gcc -o perkalianmatriks perkalianmatriks.c
$ ./perkalianmatriks
Berikut gambar hasil compile dan run programnya:
Contoh Inputan :
Masukkan jumlah baris matriks pertama: 3
Masukkan jumlah kolom matriks pertama: 3
Masukkan jumlah baris matriks kedua: 3
Masukkan jumlah kolom matriks kedua: 3
Masukkan elemen matriks pertama:
1 2 0
0 1 1
2 0 1
Masukkan elemen matriks kedua:
1 1 2
2 1 1
1 2 1
Contoh output :
Hasil perkalian matriks:
5 3 4
3 3 2
3 4 5
Kesimpulan :
Dari hasil percobaan program, source code perkalian matriks tersebut berhasil dapat dijalankan tanpa ada error dan menampilkan hasil perkalian matriks1 dan matriks2 dengan ordo 3 x 3.
Sekian tutorial cara membuat program perkalian matiks di bahasa pemograman C, semoga bermanfaat.
Happy Coding 🙂
untuk matriks A ordo (mxn) dikali matriks B ordo (nxp) itu gimana ya bang? make ini gabisa
ada error ketika saya mencoba ordo 2×3 dikali 3×1.
Hasilnya malah ordo 2×3 dengan kolom 2 dan 3 muncul angka tidak jelas, hasil yang tepat pada kolom 1 (sesuai dengan hasil yang semestinya, hasilnya adalah ordo 2×1). Mohon diperbaiki agar tidak menghasilkan output yang tidak sesuai tersebut.
Ada kesalahan di line 46, n seharusnya diganti q.