Struktur Data Series - Array

Selanjutnya kita akan mempelajari Array yang tentunya kita pernah mengenalnya di Algoritma. Array secara harfiah adalah larik, secara definisi array ini adalah sekumpulan memori untuk suatu nama yang memiliki elemen elemen data yang sejenis. Kita lihat ada beberapa sifat dari array. 

  • Mengacu sekumpulan elemen melalui indeks
  • Elemen bertipe sama
  • Disimpan secara berurutan di memori
  • Ukuran tetap, harus dipesan terlebih dahulu


Kita bisa merepresentasikan array menjadi dua jenis, array 1 dimensi dan array 2 dimensi, namun tentu saja ada array 3 dimensi yang mungkin nggak akan dibahas disini.


Representasi Array 1 Dimensi

Array 1 dimensi hanya memiliki 1 baris dan terdapat satu column atau lebih. Kita lihat contohnya.

SeIZLdREMMjIDlea36cbEQzqbERVOhsxvA6jKzkzyn_jh43fTIjNNlB2pwnJV-T8qzBj-xjZled-QtI21Pkv4Vu8AXBBKx6_6vRQcVUaUOpinBY5lt1SBOivNRe-LNWe_m2IYqur


Kita lihat cara larik array dimulai dari [1] ( namun secara umum dimulai dari no), cara memilih nilai dari sebuah array adalah dengan memanggil nama array dan indexnya, spt, A[1] untuk memanggil array pertama.


Deklarasi Array :

Setelah kita tahu gambaran dari Array, kita bisa mendeklarasikan array dengan 3 tahap.


Deklarasi index awal dan akhir konstanta (const)

IdxAwal = 1

IdxAkhir = 100


Memberikan tipe data array

TipeInfo = ...

TabInfo = Array [IdxAwal .. IdxAkhir] of TipeInfo


Deklarasi variabel

<identifikasi_variabel> : TabInfo


Contoh algoritma Array 1 dimensi:

Algoritma bilangan_genap

   

Deklarasi :

Arragenap : array [1...5] of integer

i         : integer

   

Begin

    For ( i = 1; i <= 5; i ++ )

        Output (“masukan bilangan genap ke “i”)

        Input (arrgenap[i])

    Endfor

    For ( i = 1; i <= 5; i ++ )

        Output (arrgenap[i])

    Endfor

End

   

Penjelasannya adalah kita ingin memasukan nilai nilai bilangan genap pada sebuah variabel arraygenap bertipe data integer dengan batas index dari 1 hingga 5. Selanjutnya salah satu cara paling mudah  memasukkannya kita cukup melakukan pengulangan menggunakan for misalnya. Satu persatu data yang dimasukan sesuai dengan index array yang berjalan. 


Selanjutnya cara kita menampilkan array adalah dengan menggunakan pengulangan kembali sesuai dengan index arraynya berturut turut. Maka contoh hasilnya seperti ini.


ZF-reB4BS-uja9EoWlTj4X0lKvieoTkKkYW0RXig4JZ6Tx1ayEpdBL0KPW8kpv4Xyiej3rg9b7cIZ9z4eZEYoEyxd67YrpnIASl5LtoOOEhHdxzSc816SiFYXeaSdbFN0dBOaVji



Representasi array 2 Dimensi

Berbeda halnya dengan array 1 dimensi, array 2 dimensi memiliki baris lebih dari satu, dan biasanya array 2 dimensi disebut sebagai matriks yang kita pahami di ilmu matematika. Berikut contoh dari array 2 dimensi.

pNTnltxsARxi8fSuzccSOX3or7Zqe_QzZUft0Ht9vfc24Td96x5M4hpfRv7BJoSPRTNKMKXR23hulUg5y3cK2T8TyGJdMmZQWr5FMlB5kXbhmaRSUzDOtNQgqxjtZeboLGDj4GiD

Cara pemanggilannya pun cukup berbeda, karena array 2 dimensi memiliki baris dan kolom, kita harus memanggil posisi index baris dan kolomnya, contohnya seperti memanggil larik paling atas kiri, spt, A[1,1].


Deklarasi Array :

Sama dengan Array 1 dimensi, deklarasi array 2 dimensi ada 3 tahap. Berikut tahapan dan penulisannya.


Deklarasi index awal dan akhir konstanta (const)

IdxAwal = 1

IdxAkhir = 100


Memberikan tipe data array

TipeInfo = ...

TabInfo = Array [ Idxawal .. Idxakhir, Idxawal.. Idxakhir] of TipeInfo


Deklarasi variabel

<identifikasi_variabel> : TabInfo


Perbedaannya berada pada tahap kedua, Array [ Idxawal .. Idxakhir, Idxawal.. Idxakhir] of TipeInfo, disana dibagi menjadi dua, ada index awal dan inxe akhir untuk baris, ada untuk kolom. 


Contoh algoritma Array 2 dimensi:


Algoritma Harga_Kuota_Internet;

Deklarasi

      arrkuota : array [ 1...4 , 1...2] of string

      x,y         : integer

Begin

      For ( x = 1; x <= 4; x++)

         For ( y = 1; y <= 2; y++)

            IF y = 1 then

                output "masukan kuota "

                input  (kuota)

                arrkuota [x,y] = kuota

            else

                ouput "masukan harga "

                input (harga)

                arrkuota [x,y] = harga

           End IF

       End For

     End For

      For ( x = 1; x <= 4; x++)

         For ( y = 1; y <= 2; y++)

             output (arrkuota [x] )

         End For

     End For

End


Kita ambil contoh daftar list harga kuota. Disini terdapat  dua kali pengulangan. Mengapa demikian? Karena kita harus melakukan pengulangan pada baris (x) dan kolom (y). Dengan pengulangan seperti ini, kita bisa memasukan satu persatu dari array [1,1] hingga array [4,2]. Setelah itu, kita cukup keluarkan arraynya. Dengan teknik pengulangan yang sama dengan penginputan. Contoh hasilnya seperti dibawah.

MuyVqu_MdgtEhJQl9DDzoCovBIDYxrcwXGtfNaINv6jJ81N9_aKrJgJ1kLQAC7MxLMvlvReX_5qySXhdZCzn2QtUsdF1UZd3idTx_qrQUAHHPMcFjdWDCwLUNYnNpZdqcpNhE4bJ

Itu dia struktur data jenis Array yang kita telah pelajari. Array ini akan berguna ketika kita bermain dengan tabel dan interaksinya dengan database untuk ditampilkan pada sebuah tabel pengulangan. Selanjutnya kita akan belajar tentang pointer.



avatar randynetworks

Ditulis oleh @randynetworks

"Untuk meraih sesuatu, harus mengorbankan sesuatu juga."