Saturday, March 3, 2012

.Penjumlahan Matriks"); printf("\n2.Pengurangan Matriks"); printf("\n3.Perkalian MatriksDeterminan Matriks

#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;

}

ads

Ditulis Oleh : joeco3l Hari: March 03, 2012 Kategori:

0 komentar:

Post a Comment