Post on 04-Jul-2015
LARIK (ARRAY)
10/12/2012 1Nurdiansah PTIK 09 UNM
Pengertian
sekumpulan kotak (variable) yang menyimpan sekumpulan elemen bertipesama secara berurutan (sequential).
Tipe terstruktur yang terdiri dari sejumlah komponen yang mempunyai tipe data yang sama
Nama lain Array : larik, tabel, atau vektor
Variabel array terdiri dari :
Array berdimensi satu
Array berdimensi dua
10/12/2012 2Nurdiansah PTIK 09 UNM
Ciri-ciri Array
Ciri-ciri Array
setiap elemen data array diacu melaluiindeksnya
karena elemen disimpan secara berurutan, indek array harus lah suatu tipe yang mempunyai keterurutan (ada suksesordan predecessor).
Contoh bertipe data : integer, karakteratau tipe data enumerasi.
10/12/2012 3Nurdiansah PTIK 09 UNM
Pengolahan data array harus per elemen.
Elemen Array dapat diakses secara langsung (random), maksudnya untuk memanipulasi elemen keempat tidak harus melalui elemen pertama, kedua, dan ketiga.
10/12/2012 4Nurdiansah PTIK 09 UNM
Keuntungan struktur data array
Paling mudah pengoperasiannya
Ekonomis dalam pemakaian memori, bila semua elemen terisi
Akses ke setiap elemen memerlukan waktu yang sama.
10/12/2012 5Nurdiansah PTIK 09 UNM
Array Berdimensi Satu
Bentuk Umum :
Tipe_Data Nama_Variabel [ukuran]
• Contoh :
int nilai [6];
Tipe data elemen array
Nama array
Jumlah elemen
10/12/2012 6Nurdiansah PTIK 09 UNM
Contoh :
int nilai [4];
Hasilnya :
? ? ? ?
Nilai [0] Nilai [1]
Nilai [2]
Nilai [3]
10/12/2012 7Nurdiansah PTIK 09 UNM
Bentuk umum untuk data bukan angka :data_type array_name []={constant_1, constant_2,...,constant_n}
• Data type menyatakan tipe data array.Array_name adalah nama array, harus memenuhi ketentuan identifier.Constant_1,...,constant_n adalah nilai awal elemen array dan harus setipe.
• Contoh :char huruf []={‘a’,’b’,’c’}
Hasil huruf[0] huruf[1] huruf[2]
‘a’ ‘b’ ‘c’
10/12/2012 8Nurdiansah PTIK 09 UNM
Array Berdimensi Dua
Bentuk Umum :
Tipe_Data Nama_Variabel [index-1] [index-2]
• Contoh :
int nilai [2] [3] ;
Tipe data elemen array
Nama array
Jumlah baris
Jumlah kolom
10/12/2012 9Nurdiansah PTIK 09 UNM
Salah satu implemantasi array 2 dimensi ini digunakan untuk membuat program MATRIK (Aljabar Linear).
Contoh Matrik dengan ordo 2 x 2
A= 1 5
2 4
Matrik A diatas adalah matrik dengan ordo 2x2 sehingga matrik tersebut memiliki elemen : A[1,1] = 1, A[1,2] = 5, A[2,1]= 2 dan A[2,2]=4.
10/12/2012 10Nurdiansah PTIK 09 UNM
Array Multi Dimensi
Bahasa C tidak membatasi jumlah dimensi array yang bisa digunakan. Hal ini semata-mata dibatasi jumlah memory yang tersedia.
Array tiga dimensi dapat diumpamakan sebagai sebuah balok dengan balok-balok satuan sebagai elemen array.
Bentuk umum :data_type array_name[size1] [size2]...[size n]
• Size 1 menyatakan jumlah elemen dimensi pertamasize 2 menyatakan jumlah elemen dimensi keduasize n menyatakan jumlah elemen dimensi ke-n
10/12/2012 11Nurdiansah PTIK 09 UNM
Cara mengacu elemen larik
Elemen larik diacu melalui indeksnya. Nilaiindeks harus terdefinisi.
Contoh cara mengacu elemen larik adalah:L[4] {mengacu elemen keempat darilarik L}Nama_mahasiswa[‘b’] {mengacu elemenkedua dari larik Nama_mahasiswa}P[k] {mengacu elemen ke-k dari larik P, asalkan nilai k sudah terdefinisi}
10/12/2012 12Nurdiansah PTIK 09 UNM
Contoh I
int i, j ;int tabel [3] [2] ;for (i=0 ; i<=2 ; i++){
for (j=0; j<=1; j++){
cout<< “data ke- “ << i << j << endl;
cout<<“ nilai = “ ;cin>> tabel [i] [j];
}} 10/12/2012 13Nurdiansah PTIK 09 UNM
Hasil Contoh I
Tabel [0] [0] Tabel [0] [1]
Tabel [1] [0] Tabel [1] [1]
Tabel [2] [0] Tabel [2] [1]
HASIL
10/12/2012 14Nurdiansah PTIK 09 UNM
Contoh 2Diberikan matriks A sebagai berikut :
1 1 1 10 1 1 10 0 1 10 0 0 1
Perintah pokok yang digunakan pada pengisian matriks A adalah :
A[i,j] = 1, jika i <= jA[i,j] = 0, jika i > j
10/12/2012 15Nurdiansah PTIK 09 UNM
Cara lain pendefenisian matriks
Sebagai peubah
Contoh :
L : array[1..50] of integer
NamaMhs : array[‘a’..’j’] of string
Sebagai tipe baru
Contoh :
type LarikInt : array[1..100] of integer
P : LarikInt
10/12/2012 16Nurdiansah PTIK 09 UNM
Mendefinisikan ukuran maksimum elemenlarik sebagai konstanta
Contoh :
Const Nmaks= 100
type LarikInt : array[1..Nmaks]of integer
P : LarikInt
Cara menerjemahkan ke bahasa C :
#define Nmaks 100
typedef int LarikInt[Nmaks+1];
LarikInt P;
10/12/2012 17Nurdiansah PTIK 09 UNM
Menginisialisasi matriks
Menginisialisasi elemen larik adalahmemberikan harga awal untuk seluruhelemen larik, misalnya menginisialisasidengan nilai 0 seperti di bawah ini :
Procedure InisDgn0 (output A:larik, input N:integer)
{menginisialisasi setiap elemen larik A[1..N] dengan nol}
{K,Awal : N banyak elemen efektif larik, nilainya terdefinisi}
10/12/2012 18Nurdiansah PTIK 09 UNM
{K,akhir ; seluruh elemen larik A bernilai 0}
Deklarasi :
K : integer
Deskripsi :
for k ← 1 to N do
A[k] ← 0
endfor
10/12/2012 19Nurdiansah PTIK 09 UNM
Bentuk paling umum digunakan
Bentuk paling umum digunakan dalam bahasa pemrograman C :type pengenal = array[tipe_indeks] of tipedimana :pengenal adalah nama tipe datatipe_index adalah tipe data untuk nomor indextipe adalah tipe data dari komponen arrayParameter tipe_index menentukan banyaknya komponen larik tersebut. Parameter ini bisa sembarang tipe ordinal kecuali longint dan subjangkauan dari logint.
10/12/2012 20Nurdiansah PTIK 09 UNM
Sebelum elemen larik dapat digunakan maka perlu didefinisikan dulu sebagai berikut :
Nama : array[1..400] of string (larik dgn tipe data string)
Panjang : array[a..e] of real (larik dengan tipe data real)
Type TITIK : record <X: real, Y : real>
Kurva : array[0..30] of Titik (larik dengan tipe data record)
10/12/2012 21Nurdiansah PTIK 09 UNM
To be continue…
10/12/2012 22Nurdiansah PTIK 09 UNM