Anda di halaman 1dari 19

ARRAY / LARIK

Definisi

• Larik atau array : sejumlah data sejenis (bertipe


data sama),disimpan secara beruntun di memori
komputer, setiap data diacu menggunakan indeks.
Contoh: Array A :
A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8], A[10], A[11], A[12]

A 155 163 181 165 175 166 185 155 172 166 170 160
Larik didefinisikan dalam deklarasi:

a. Sebagai Peubah
Contoh:
DEKLARASI
A : array [1..100] of integer

• larik bernama A yang terdiri dari 100 elemen


• Setiap elemen diberi nomor 1 s.d 100 yang disebut
indeks larik.
• Diisi oleh bilangan bulat.
b. Sebagai Tipe Bentukan
Contoh:
DEKLARASI
type LarikInt : array [1..100] of integer {nama tipe baru}
A : LarikInt { A peubah larik integer dengan 100 elemen}

c. Mendefinisikan ukuran larik sebagai konstanta


Contoh:
DEKLARASI
const Nmaks =100 {ukuran maksimum elemen larik}
type LarikInt : array [1..Nmaks] of integer {nama tipe baru}
A : LarikInt { A peubah larik integer dengan 100 elemen}
Mengisi Elemen Larik dengan Pembacaan

a. Jumlah elemen efektif ditentukan di awal


procedure BacaLarik1 (input n : integer, output A : LarikInt )
{ Mengisi elemen larik A[1..n] dengan pembacaan}
{ K.Awal : n adalah banyaknya elemen efektif larik, nilainya terdefinisi}
{K.Akhir : elemen-elemen A berisi nilai-nilai yang dibaca dari piranti
masukkan}
DEKLARASI
i : integer
ALGORITMA :
for i ← 1 to n do
read(A[i])
endfor
b. Jumlah elemen efektif diketahui di akhir pembacaan
procedure BacaLarik2 (output A : LarikInt, output n : integer, ) { Mengisi elemen
larik A[1..n] dengan pembacaan, akhir pembacan jika nilai yang dibaca 9999}
{ K.Awal : sembarang}
{K.Akhir : elemen-elemen A berisi nilai-nilai yang dibaca dari piranti masukkan,
n adalah banyaknya elemen yang diisi}
DEKLARASI
x : integer
ALGORITMA :
n←0
read(x)
while x ≠ 9999 do
n ← n+1
A[n] ← x
read(x)
endwhile
Larik Bertipe Terstruktur
NIM NamaMhs IPK
1 29801 Heru Satrio 3.04
2 29804 Amirullah Satya 2.75
3
.
.
100 29887 Yanti Siregar 2.109

Nama larik Mhs


DEKLARASI
const Nmaks = 100
type Mahasiswa : record < NIM ; integer,
NamaMhs : string,
IPK : real
>
type TabMhs : array [1..Nmaks] of Mahasiswa
Mhs : TabMhs
• Cara mengacu elemen Mhs:
Contoh: Mhs [2] Mhs [2].NIM Mhs[2].I PK
procedure BacaData Mahasiswa (input n : integer, output Mhs : TabMhs)
{Membaca data mahasiswa (NIM, nama, IPK) )}
{K.Awal : n berisi banyaknya mahasiswa}
{K.Akhir : Mhs berisi data hasil pembacaan}
DEKLARASI
i : integer
ALGORITMA :
for i ← 1 to n do
read(Mhs[i].NIM)
read(Mhs[i].NamaMhs)
read(Mhs[i].IPK)
endfor
Contoh 1.

• Buatlah algoritma dan program untuk mencari


bilangan yang terbesar dan nilai rata-rata dari array
bilangan real yang sudah ditentukan isi atau
elemennya !
Contoh 2.

• Terdapat 2 array yang elemen-elemennya adalah


sebagai berikut :
A = [3,6,4,8,9,2]
B = [2,4,6,8,1,3]
Buatlah algoritma dan program untuk
menjumlahkan elemen yang bersesuaian dari array
A dan B lalu menyimpan hasil penjumlahannya pada
array baru (misal C).
Contoh 3.

• Buatlah algoritma dan program untuk


menginputkan sembarang huruf dalam sebuah
array yang berukuran 5 elemen, lalu membalik
elemen dalam array tersebut. Tampilkan hasilnya
sebagai output !
input : k a s u r

output : r u s a k
Contoh 4.

• Terdapat array sebagai berikut :


A = [8,9,4,7,6,1,5,3,10,4,16,3]
Buatlah algoritma dan program untuk
mempertukarkan 2 elemen/nilai yang berdekatan,
sehingga output-nya menjadi :
A = [9,8,7,4,1,6,3,5,4,10,3,16]
Array Berdimensi Dua

• Sering kali digambarkan/dianalogikan sebagai


sebuah matriks.
• Jika array berdimensi satu hanya terdiri dari 1
baris dan banyak kolom, array berdimensi
dua terdiri dari banyak baris dan banyak
kolom yang bertipe sama
Ilustrasi Array Berdimensi Dua

matriks2[0..2,0..3] = {{5,20,1,11},{4,7,67,-9},{9,0,45,3}};
Array Berdimensi Dua

• Deklarasi Array
nama_array :array [1..jml_baris,1..jml_kolom] of tipe
data

Keterangan :
nama_array : menyatakan nama variabel yang dipakai.
jml_baris : menunjukkan jumlah maksimal baris.
jml_kolom : menunjukkan jumlah maksimal kolom.
tipe_data : menyatakan jenis tipe data elemen array
(int, char, dll)
Contoh:
M : array[1..5,1..4] of integer
• Sebagai Tipe Bentukan
Contoh:
DEKLARASI
type Mat : array [1..5, 1..4] of integer {nama tipe baru}
M : Mat { M nama matrik s yang bertipe Mat}

• Mendefinisikan ukuran maksimum matriks sebagai konstanta


Contoh:
DEKLARASI
const NbarisMaks =20 {ukuran baris maksimum}
const NkolomMaks =20 {ukuran kolom maksimum}
type MatriksInt : array [1.. NbarisMaks, 1.. NkolomMaks] of integer
M : MatriksInt { M nama matriks yang bertipe MatriksInt}
Pemrosesan Matriks
Contoh:
procedure BacaMatriks1 (input/output M : MatriksInt
input Nbar, Nkol : integer)
{ Mengisi elemen matriks M[1..Nbar,1..Nkol] dengan pembacaan}
{ K.Awal : Nbar dan Nkol nilainya sudah terdefinisi}
{K.Akhir : elemen-elemen matriks M berisi nilai yang dibaca dari piranti masukkan}
DEKLARASI
i : integer {indeks baris}
j : integer {indeks kolom}
ALGORITMA :
for i ← 1 to Nbar do
for j ← 1 to Nkol do
read(M[i,j])
endfor
endfor
Contoh 1.

• Buatlah algoritma dan program untuk


menginputkan pasangan Negara dan Ibukota
berikut dalam sebuah array :
Negara Ibukota
Indonesia Jakarta
Inggris London
Austria Wina
Perancis Paris
Jepang Tokyo
Contoh 2.

• Buatlah algoritma dan program untuk


menginputkan sembarang bilangan bulat
dalam sebuah matriks 3 x 3, lalu
menampilkan :
– Isi matriks
– Transpose matriks
– Diagonal matriks

Anda mungkin juga menyukai