ARRAY



Variabel  Larik  atau lebih  dikenal dengan ARRAY adalah adalah Tipe terstruktur yang terdiri dari sejumlah  komponen-komponen    yang mempunyai tipe yang sama. Suatu Array  mempunyai jumlah komponen yang banyaknya tetap. Banyaknya komponen dalam suatu larik ditunjukan
oleh suatu  indek  untuk membedakan variabel yang satu dengan variabel yang lainnya.
Variabel  array  dalam Borland  C++, dapat digolongkan menjadi tiga buah dimensi :

   Array Berdimensi Satu.
   Array Berdimensi Dua
   Array Berdimensi Dua

A.    Array Berdimensi Satu

Sebelum digunakan, variabel array perlu dideklarasikan terlebih dahulu. Cara mendeklarasikan variabel array sama seperti deklarasi variabel  yang lainnya, hanya saja diikuti oleh  suatu indek yang menunjukan jumlah maksimum data yang disediakan.

Deklarasi Array  Bentuk Umum pendeklarasian array :

     

Keterangan :
   Type Data  :  Untuk menyatakan type data yang digunakan.
   Ukuran  :  Untuk menyatakan jumlah maksimum  elemen
array.


Suatu array dapat digambarkan sebagai kotak panjang yang berisi kotak-
kotak kecil didalam kotak panjang tersebut.
Subscript atau Index array pada C++, selalu dimulai dari Nol ( 0 ) 

1.        Mengakses Array Berdimensi Satu

Suatu array, dapat diakses dengan  menggunakan subscript atau indexnya:
Bentuk umum pengaksesan dengan bentuk :

Contoh  :

  Nil_Akhir[3];
  Nil_Akhir[1];
  Nil_Akhir[0];

Contoh :

/* ---------------------------- */
/*  Program Array Satu Dimensi  */   
/* ---------------------------- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>

main()
{
   int i;
   char  nama[5][20];
   float nilai1[5];
   float nilai2[5];
   float hasil[5];

   clrscr();
   for(i=1;i<=2;i++)
   {
   cout<<"Data Ke - "<<i<<endl;
   cout<<"Nama Siswa: "; gets(nama[i]);
cout<<"Nilai MidTest : "; cin>>nilai1[i];
   cout<<"Nilai Final:";
cin>>nilai2[i];
   hasil[i] = (nilai1[i] * 0.40)+ (nilai2[i] * 0.60);
   cout<<endl;
   }

cout<<"-----------------------------------------";
   cout<<"-------"<<endl;
cout<<"No. Nama Siswa            Nilai     Nilai ";
   cout<<"Hasil"<<endl;
   cout<<" MidTest   Final ";
   cout<<"Ujian"<<endl;
cout<<"------------------------------------------";
   cout<<"-------"<<endl;

   for(i=1;i<=2;i++)
   {
cout<<setiosflags(ios::left)<<setw(4)<<i;
  cout<<setiosflags(ios::left)<<setw(20)<<nama[i];
cout<<setprecision(2)<<""<<nil
ai1[i];
cout<<setprecision(2)<<""<<nilai2[i];
                            
cout<<setprecision(2)<<""<<hasil[i]<<endl;
   }

   cout<<"-----------------------------
-------------";
   cout<<"-------"<<endl;
   getch();
}

2.       Inisialisasi Array Berdimensi Satu

Inisialisasi adalah memberikan nilai  awal terhadap suatu variabel. Bentuk pendefinisian suatu array dapat dilihat dari contoh berikut :

Tipe_data nama_array[jml_elemen] = { nilai array };

Contoh :

float nilai[5] = {56.5, 66.7, 87.45, 98,5, 78.9 };

Contoh :

  /* ----------------------------- */
  /* Inisialisasi Array Dimensi 1  */
  /* ----------------------------- */

#include<conio.h>
#include<iostream.h>
#include<iomanip.h>

void main()
{
   int nilai[5] = {56, 67, 57, 76, 72};
   int i;

   clrscr();

   for(i=0; i<5; i++)
   {
cout<<"Nilai Array Index ke - "<<i<<" = ";
      cout<<<a<<endl;
   }

   getch();
}

B.      Array Berdimensi Dua

Array  dimensi dua tersusun dalam bentuk baris dan kolom, dimana indeks pertama  menunjukan  baris dan indeks kedua menunjukan kolom. Array dimensi dua dapat digunakan seperti pendatan penjualan, pendataan nilai dan lain sebagainya.

Deklarasi Array  Bentuk Umum pendeklarasian array :


Keterangan :
   Type Data  :  Untuk menyatakan type data yang
digunakan.
   Index-1  :  Untuk menyatakan jumlah baris
   Index-2  :  Untuk menyatakan jumlah kolom

Contoh Pendeklarasian Array

                   Tabel Data Penjualan Pertahun

Jika anda lihat dari  tabel diatas  maka dapat dituliskan kedalam array dimensi dua berikut :

Sebagai  contoh  pendeklarasian yang akan kita gunakan adalah pengolahan data penjualan, berikut dapat anda lihat pada tabel berikut :



1.        Mengakses Array Berdimensi Dua

Suatu array, dapat diakses dengan  menggunakan subscript atau indexnya 

Bentuk umum pengaksesan dengan bentuk :

           

Contoh :

data_jual[2][2];
data_jual[1][2];

Contoh :

/* ---------------- */
/* Array Dimensi 2  */
/* ---------------- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>
main()
{
   int i, j;
   int data_jual[4][4];
   clrscr();

   for(i=1;i<=3;i++)
   {
    for(j=1;j<=3;j++)
    {
cout<<"Data Ke - "<<i<<" "<<j<<endl;
     cout<<"Jumlah Penjulan    : ";
     cin>>data_jual[i][j];
    }
 }
cout<<"DataPenjualan Pertahun"<<endl;
   cout<<"-----------------"<<endl;
cout<<"NO 2001 2002 2003"<<endl;
   cout<<"------------------"<<endl;

   for(i=1;i<=3;i++)
   {
cout<<setiosflags(ios::left)<<setw(5)<<i;
    for(j=1;j<=3;j++)
    {
cout<<setiosflags(ios::right)<<setw(4);
           cout<<data_jual[i][j];
           cout<<"   ";
     }
    cout<<endl;
 }
 cout<<"--------------------"<<endl;
 getch();
}
2.       Inisialisasi Array Berdimensi Dua

Inisialisasi adalah memberikan nilai  awal terhadap suatu variabel. Bentuk  pendefinisian suatu array dapat dilihat dari contoh berikut :

Tipe_data nama_array[jml_elemen] = { nilai array };

Contoh  int data[2][5] = { {2, 3, 4, 5, 2},
                                                     {4, 2, 6, 2, 7},
                                                   };

Contoh :

/* ----------------------------- */
/* Inisialisasi Array Dimensi 2  */
/* ----------------------------- */

#include<conio.h>
#include<stdio.h>
#include<iostream.h>

void main()
{
   int i, j;
   int data[2][5]={{2, 3, 4, 5, 2},
                   {4, 2, 6, 2, 7}};
   clrscr();
   for(i=0;i<2;i++)
   {
    for(j=0;j<5;j++)
     {
      cout<<data[i][j];
      cout<<" ";
     }
    cout<<endl;
 }

   getch();
}  

C.      Array Berdimensi Tiga

Array  dimensi  dua tersusun dalam bentuk baris, kolom dan isi dari baris, dimana indeks pertama menunjukan baris, indeks kedua  menunjukan kolom dan indeks ketiga menunjukan isi dari baris.


Keterangan :
   Type Data  :  Untuk menyatakan type data yang
digunakan.
   Index-1  :  Untuk menyatakan jumlah baris
   Index-2  :  Untuk menyatakan jumlah isi dari baris
   Index-3  :  Untuk menyatakan jumlah kolom

Contoh Pendeklarasian Array

Sebagai  contoh  pendeklarasian yang akan kita gunakan adalah pengolahan data penjualan, berikut dapat anda lihat pada tabel berikut :
Tabel Data Penjualan Pertahun

Jika anda lihat dari  tabel diatas  maka dapat dituliskan kedalam array dimensi dua berikut :


1.        Mengakses Array Berdimensi Tiga

Suatu array, dapat diakses dengan  menggunakan subscript atau indexnya 
           
Bentuk umum pengaksesan dengan bentuk :

           
Contoh :

  data_jualan[1][1][1];
  data_jualan[1][0][1];

Contoh :

/* ---------------- */
/* Array Dimensi 3  */
/* ---------------- */
#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>

main()
{
   int i, j, k;
   int data_jual[2][3][2];

   clrscr();

   for(i=0;i<2;i++)
   {
    for(j=0;j<3;j++)
    {
       for(k=0;k<2;k++)
      {
cout<<"Data Tahun Ke - "<<i+1<<endl;
cout<<"Data Ke - "<<j+1<<" "<<k+1<<endl;
       cout<<"Jumlah Penjulan   : ";
       cin>>data_jual[i][j][k];
       }
       cout<<endl;
    }
     cout<<endl;
 }

   cout<<endl;
cout<<"DataPenjualanPertahun"<<endl;
   cout<<"------------------------";
   cout<<endl;
cout<<"Tahun Hasil Tahun Penjualan Ke. ";
   cout<<endl;
cout<<"Ke.      Ke.      --------------------";
   cout<<endl;
   cout<<"        1         2     ";
   cout<<endl;
   cout<<"-------------------------------------";
   cout<<endl;

   for(i=0;i<2;i++)
   {
     for(j=0;j<3;j++)
     {
       cout<<setiosflags(ios::left)<<setw(11)<<i+1;
       cout<<setiosflags(ios::left)<<setw(9)<<j+1;
       for(k=0;k<2;k++)
       {
       cout<<setiosflags(ios::right)<<setw(5);
           cout<<data_jual[i][j][k];
           cout<<"     ";
       }
       cout<<endl;
     }
     cout<<endl;
  }

cout<<"--------------------------------------";
   cout<<endl;

   getch();
}


2.       Inisialisasi Array Berdimensi Tiga 
 
Inisialisasi adalah memberikan nilai  awal terhadap suatu variabel. Bentuk  pendefinisian suatu array dapat dilihat dari contoh berikut :

Tipe_data nama_array[jml_elemen] = { nilai array };

Contoh:

float data[2][4][3] = {
                                                              {100, 200, 300},
                                                              {150, 240, 360},
{250, 340, 460},
                                                               {250, 340, 460}},
{{160, 250, 365},
                                                               {175, 275, 375},
                                                               {275, 375, 575},
                                                               {280, 380, 580}}
                                                              };
Contoh :

/* ----------------------------- */
/* Inisialisasi Array Dimensi 3  */
/* ----------------------------- */

#include<conio.h>
#include<stdio.h>
#include<iostream.h>
#include<iomanip.h>

main()
{
   int i, j, k;
   float data[2][4][3] =
{
{{100, 200, 300},
            {150, 240, 360},
            {250, 340, 460},
            {250, 340, 460}},
          { {160, 250, 365},
            {175, 275, 375},
            {275, 375, 575},
            {380, 480, 580}}
      };
   clrscr();

cout<<"----------------------------------------"
   cout<<endl;
cout<<"Tahun  Hasil  Tahun Penjualan   "
   cout<<endl;
cout<<"Ke.     Ke.       ----------------------"
   cout<<endl;
   cout<<"    2002    2003    2004 "
   cout<<endl;
cout<<"----------------------------------------"
   cout<<endl;
   for(i=0;i<2;i++)
   {
     for(j=0;j<4;j++)
     {
cout<<setiosflags(ios::left)<<setw(9)<<i+1;
      cout<<setiosflags(ios::left)<<setw(9)<<j+1;
           for(k=0;k<3;k++)
           {
cout<<setiosflags(ios::right)<<setw(5);
           cout<<data[i][j][k];
           cout<<"   ";
           }
           cout<<endl;
     }
     cout<<endl;
 }
cout<<"----------------------------------------"
   cout <<endl;

   getch();
}



Komentar

Postingan populer dari blog ini

PERULANGAN