I. PROGRAM PRAKTIKUM
1. Perkalian Matriks
Listing Program
#include <stdio.h>
main()
{
int I, J, K, b1, k1,b2, k2;
int A[100][100],B[100][100],C[100][100];
ulang:
printf("\t\tprogram perkalian matriks\n");
printf("Jumlah Baris Matrik A: ");scanf("%d", &b1);
printf("Jumlah Kolom Matrik A: ");scanf("%d", &k1);
printf("\n");
printf("Jumlah Baris Matrik B: ");scanf("%d", &b2);
printf("Jumlah Kolom Matrik B: ");scanf("%d", &k2);
printf("\n");
if (b1 != k2)
{
printf("Perkalian matriks tidak bisa dilakukan\n\n");
goto ulang;
}
Tampilan Program
Analisa Program
Program ini dibuat dengan menggunakan aplikasi array dua dimensi. Pada
program ini, operasi matriks yang dibuat adalah operasi perkalian. Di mana syarat
utama perkalia matriks baris dari matriks A harus sama dengan kolom dari
matriks B. Jadi, pada program dilakukan pengecekan terlebih dahulu tentang syrat
tersebut. Apabila syarat terpenuhi, maka program akan dapat mengeksekusi
perintah selanjutnya.
II. PROGRAM TUGAS AKHIR
1) Program C untuk menguji sifat simetris dari matriks bujursangkar
Listing Program
#include <stdio.h>
main()
{
int b,k,i,j,A[99][99];
ulang:
printf("Masukkan jumlah baris : ");scanf("%d",&b);
printf("Masukkan jumlah kolom : ");scanf("%d",&k);
printf("\n");
for(i=1;i<=b;i++)
{for(j=1;j<=k;j++)
{printf("Masukkan elemen matriks A[%d][%d] : ",i,j);
scanf("%d",&A[i][j]);}
}
if(i==j)
{printf("Matriks bersifat simetris\n\n");
goto ulang;}
else if(i!=j)
{printf("Matriks tidak simetris\n\n");
goto ulang;}
printf("\n\n");
}
Tampilan Program
Analisa Program
Untuk mengecek kesimetrisan sebuah matriks, pertama yang pasti adalah
bahwa matriks tersebut merupakan matriks persegi jadi jumlah kolom sama
dengan jumlah baris, oleh karena itu program hanya meminta input baris atau
kolom saja. Selanjutnya perogram menukarkan indeks baris pada matriks pertama
menjadi indeks kolom pada matriks kedua dan sebaliknya, hal ini untk
menentukan transpose nya, kemudian program bertanya menggunakan if
condition, apabila matriks A sama dengan matriks A t ranspose maka matriks
tersebut simetris.
2) Program menghitung trace matriks bujursangkar
Listing Program
#include <stdio.h>
main()
{
int i,j,b,k,A[99][99],B[99][99];
printf("Masukkan banyak baris : ");scanf("%d",&b);
printf("Masukkan banyak kolom : ");scanf("%d",&k);
if(b==k)
{printf("\n");
for(i=1;i<=b;i++)
{for(j=1;j<=k;j++)
{printf("Masukkan elemen matriks A[%d][%d] : ",i,j);
scanf("%d",&A[i][j]);}
}
printf("\n");
for(i=1;i<=b;i++)
{for(j=1;j<=k;j++)
{if(i==j)
B[i][j]=0;
B[i][j]+=A[i][j]+A[i+1][j+1];
}
}
printf("\n");
printf("Hasil trace adalah : %d",B[1][1]);
printf("\n\n\n");
}
else if(b!=k)
printf("Matriks tersebut tidak bisa di trace\n\n\n");
}
Tampilan Program
for(i=1;i<=b;i++)
{for(j=1;j<=k;j++)
{printf("Masukkan elemen matriks A[%d][%d] : ",i,j);
scanf("%d",&A[i][j]);}
}
printf("\n");
printf("Masukkan bilangan skalar : ");scanf("%d",&c);
printf("\n");
Tampilan Program
Tampilan
Analisa Program
Program di atas adalah program aplikasi dari arry 2 dimensi untuk menghitung
determinan matriks 3x3 dengan kofaktor. Program akan meminta input elemen
dari array yang menjadi elemen matriks yang akan diproses untuk menghitung
determinannya.
KESIMPULAN
Array dua dimensi adalah array yang memiliki dua buah subskrip yaitu
baris dan kolom. Array dua dimensi dapat digunakan dalam program yang
melakukan proses operasi matriks seperti penjumlahan/pengurangan, perkalian,
transpouse, dan sebagainya.