#include<stdio.h>
#include<string.h>
char pilihan, lanjut;
int m,n;
int matriks1[10][10], matriks2[10][10];
int jumlah[10][10];
int kurangi[10][10];
int kali[10][10];
int A[10][10],i,j,determinan;
typedef int matriks22 [2][2];
matriks22 a,b,c;
void baca_matriks(int mat[10][10], int baris, int kolom)
{
for( i =1;i<=baris; i++)
{
for(j=1;j<=kolom;j++)
{
printf("Data [%d,%d] = ", i,j);
scanf("%d", &mat[i][j]);
}
}
}
void matriks_jumlah(const int matriks[10][10], const int matriks2[10][10], int baris, int kolom, int jumlah [10][10])
{
for(i = 1;i<=baris; i++)
{
for(j = 0;j<=kolom;j++)
{
jumlah [i][j] = matriks[i][j] + matriks2[i][j];
}
}
}
void cetak_matriks(const int A[10][10], int baris, int kolom)
{
printf("\n");
for(i = 1;i<=baris;i++)
{
for(j = 1;j<=kolom;j++)
{
printf("%d ", A[i][j]);
}
printf("\n");
}
}
void matriks_kurangi(const int matriks[10][10], const int matriks2[10][10], int baris, int kolom, int kurangi [10][10]){
for(i = 1;i<=baris; i++){
for(j = 0;j<=kolom;j++){
kurangi [i][j] = matriks[i][j] - matriks2[i][j];
}
}
}
void matriks_kali(const int matriks[10][10], const int matriks2[10][10], int baris, int kolom, int kali[10][10]){
for(i = 1;i<=baris; i++){
for(j = 0;j<=kolom;j++){
kali[i][j] = matriks[i][j] * matriks2[i][j];
}
}
}
//Program Utama
int main(){
do{
printf("\n------------------------------------------------");
printf("\n| OLEH JOKO SUSANTO K11111020 |");
printf("\n------------------------------------------------\n");
//Memasukkan Pilihan user
printf("\nSilahkan Pilih Menu :\n");
printf("\n1.Penjumlahan Matriks");
printf("\n2.Pengurangan Matriks");
printf("\n3.Perkalian Matriks");
printf("\n4.Determinan Matriks\n");
printf("\nMasukkan pilihan : "); scanf("%d", &pilihan);
switch(pilihan){
case 1 :
printf("Banyak Baris = ");scanf("%d", &m);
printf("Banyak Kolom = ");scanf("%d", &n);
printf("\n\n=================\n");
printf("Data matriks ke-1 \n");
baca_matriks(matriks1,m,n);
cetak_matriks(matriks1,m,n);
printf("\n\n=================\n");
printf("Data matriks ke-2 \n");
baca_matriks(matriks2, m, n);
cetak_matriks(matriks2, m, n);
matriks_jumlah(matriks1, matriks2, m, n, jumlah);
printf("Hasil penjumlahan : \n");
cetak_matriks(jumlah,m,n);
break;
case 2 :
printf("Banyak Baris = ");scanf("%d", &m);
printf("Banyak Kolom = ");scanf("%d", &n);
printf("\n\n=================\n");
printf("Data matriks ke-1 \n");
baca_matriks(matriks1,m,n);
cetak_matriks(matriks1,m,n);
printf("\n\n=================\n");
printf("Data matriks ke-2 \n");
baca_matriks(matriks2, m, n);
cetak_matriks(matriks2, m, n);
matriks_kurangi(matriks1, matriks2, m, n, kurangi);
printf("Hasil Pengurangan : \n");
cetak_matriks(kurangi,m,n);
break;
case 3 :
printf("Banyak Baris = ");
scanf("%d", &m);
printf("Banyak Kolom = ");
scanf("%d", &n);
printf("\n\n=================\n");
printf("Data matriks ke-1 \n");
baca_matriks(matriks1,m,n);
cetak_matriks(matriks1,m,n);
printf("\n\n=================\n");
printf("Data matriks ke-2 \n");
baca_matriks(matriks2, m, n);
cetak_matriks(matriks2, m, n);
matriks_kali(matriks1, matriks2, m, n, kali);
printf("Hasil Perkalian : \n");
cetak_matriks(kali,m,n);
break;
case 4 :
printf("\n1. Determinan Matriks 2x2");
printf("\n2. Determinan Matriks 3x3\n");
printf("\nMasukkan pilihan : "); scanf("%d", &pilihan);
switch(pilihan){
case 1:
printf("\n\nMasukkan Nilai Tiap Elemen : \n");
//inputan
for(i=1;i<=2;i++){
for(j=1;j<=2;j++){
printf("A[%d][%d] = ", i,j); scanf("%d", &A[i][j]);
}
}
//Tampilkan matriks
printf("\nBentuk Matriks : \t");
for (i=1;i<=2;i++){
for(j=1;j<=2;j++)
printf("%d\t", A[i][j]);
printf("\n");
printf("\t\t\t");
}
//Proses Determinan Matriks 2x2
determinan = (A[1][1]*A[2][2])-(A[1][2]*A[2][1]);
printf("\nHasil Determinan = %d", determinan);
break;
case 2:
printf("\nMasukkan Nilai Matriks A :\n");
for(i=1;i<=3;i++){
for(j=1;j<=3;j++){
printf("A[%d][%d] = ", i,j);
scanf("%d", &A[i][j]);
}
}
//Tampilkan matriks
printf("\nBentuk Matriks : \t");
for (i=1;i<=3;i++){
for(j=1;j<=3;j++)
printf("%d\t", A[i][j]);
printf("\n");
printf("\t\t\t");
}
//Proses Mencari Determinan Matriks A
determinan = ((A[1][1]*A[2][2]*A[3][3])+(A[1][2]*A[2][3]*A[3][1])+(A[1][3]*A[2][1]*A[3][2])) - ((A[3][1]*A[2][2]*A[1][3])+(A[3][2]*A[2][3]*A[1][1])+(A[3][3]*A[2][1]*A[1][2]));
printf("\nHasil Determinan = %d", determinan);
break;
default: printf("\nMaaf, pilihan tidak tersedia..!"); break;}
break;
default: printf("\nMaaf, pilihan tidak tersedia..!"); break;
}
printf("\nMau coba lagi(Y/N)? "); scanf("%s", &lanjut);
}while((lanjut=='y')||(lanjut=='Y'));
return 0;
}
HomeUnlabelled.Penjumlahan Matriks"); printf("\n2.Pengurangan Matriks"); printf("\n3.Perkalian MatriksDeterminan Matriks
Saturday, March 3, 2012
.Penjumlahan Matriks"); printf("\n2.Pengurangan Matriks"); printf("\n3.Perkalian MatriksDeterminan Matriks
Lainnya dari
Ditulis Oleh : joeco3l Hari: March 03, 2012 Kategori:
Subscribe to:
Post Comments (Atom)
0 komentar:
Post a Comment