Pert.3 array

Post on 04-Jul-2015

397 views 1 download

Transcript of Pert.3 array

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