Minggu, 09 Februari 2014

Array Multi Dimensi

A. Definisi
Array multidimensi adalah array yang menyimpan array lagi didalamnya, atau bisa kita sebut array bersarang. hahahah itu hanya sekilas banyangan saja... berikut arti sebenarnya dari array multidimensi merupakan sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses melalui 2 indeks atau subskrip yaitu indeks baris dan indeks kolom.

B. Deklarasi Array Multidimensi
Berikut tata cara pendeklarasian array multidimensi
tipe_array nama_array [penjang baris][panjang kolom];
contoh:
int a[10][4];

 C. Aplikasi Array Multidimensi
Nah Array multidimensi dapat kalian gunakan dalam pengoperasian matriks, baik itu perkalian, penjumlahan, maupun pengurangan, bahkan bisa invers, tapi ingat semua itu harus sesuai dengan rumus kalau tidak, maka akan terjadi run time error atau hasil yang diinginkan tidak dapat dihasilkan
berikut contoh program untuk operasi matriks:

#include <stdio.h>
#include <conio.h>
int main ()
{
    int i,j,x;
    int a[2][2];
    int b[2][2];
    int c[2][2];
    int vc[3][3];
    int vb[3][3];
    float d[2][2];
    char ulang;
    do
    {
    printf ("NILAI MATRIKS A(3x3)\n");
    for (i=0;i<3;i++)
    {
        for (j=0;j<3;j++)
        {
            printf ("Masukkan nilai matriks A [%d, %d]=",i,j);
            scanf ("%d",&vc[i][j]);
        }
    }
    printf ("NILAI MATRIKS A\n");
    //===========================================================
    for (i=0;i<2;i++)
    {
        for (j=0;j<2;j++)
        {
            printf ("Masukkan nilai matriks A [%d , %d]=",i,j);
            scanf ("%d",&a[i][j]);
        }
    }
    //============================================================
    printf ("NILAI MATRIKS B\n");
    for (i=0;i<2;i++)
    {
        for (j=0;j<2;j++)
        {
            printf ("Masukkan nilai matriks B [%d , %d]=",i,j);
            scanf ("%d",&b[i][j]);
        }   
    }
    //============================================================
    printf ("PENJUMLAHAN MATRIKS A+B\n");
    for (i=0;i<2;i++)
    {
        for(j=0;j<2;j++)
        {
            c[i][j]=a[i][j]+b[i][j];
        }
    }
    printf ("hasilnya:\n");
    printf ("\t%d \t%d",c[0][0],c[0][1]);
    printf ("\n\t%d \t%d",c[1][0],c[1][1]);
    //==============================================================
    printf ("\nPERKALIAN MATRIKS AxB\n");
    int x=1;
    for (i=0;i<2;i++)
    {
        x=1;
        for (j=0;j<2;j++)
        {
            c[i][j]=a[i][j]*b[j][i]+a[i][j]*b[x][i];
            x--;
        }
    }
    printf ("hasilnya:\n");
    printf ("\t%d \t%d",c[0][0],c[0][1]);
    printf ("\n\t%d \t%d",c[1][0],c[1][1]);
    //=================================================================
    printf ("\nApakah ingin diulang (Y/N)");scanf("%s",&ulang);
    }while (ulang=='y'||ulang=='Y');
    getch ();
    return 0;
}

Tidak ada komentar:

Posting Komentar