3
4
5
6
Pendahul
uan
• Setiap elemen larik menyimpan sebuah nilai.
Karena seluruh elemen larik betipe sama, maka
nilai yang disimpan oleh
158 setiap elemen juga harus
bertipe sama. 157
162
1
169
2
170
3
170
4
5
6
Mendeklarasika
n Larik
• Larik adalah struktur data yang static, artinya jumlah elemen larik
harus sudah terdefinisi di dalam program. Jumlah elemen larik tidak
dapat diubah, ditambah, atau dikurangi selama pelaksanaan
program.
DEKLARASI
NamaLarik: array[idx_awal…idx_akhir] of tipe
Mendeklarasikan
Larik (2)
A. Sebagai Peubah
DEKLARASI
N : array[1..100] of integer
NamaMhs : array[1..12] of string
NilUjian : array[0..74] of real
P : array[1..100] of Titik
Atau
for i 1 to N do
pemrosesan terhadap A[i]
end for
Menginisialisasi Larik
a. Menginisialisasi elemen-elemen larik dengan nilai 0
ALGORITMA
read(N)
for i1 to N do
A[i] 0
end for
1 0
2 0
3 0
4 0
5 0
6 0
Menginisialisasi Larik
b. Menginisialisasi setiap elemen larik ke-i dengan nilai i
ALGORITMA
read(N)
for i1 to N do
A[i] i
end for 1 1
2 2
3 3
4 4
5 5
6 6
Menginisialisasi Larik
c. Menginisialisasi setiap elemen larik dengan pembacaan
ALGORITMA
read(N)
for i1 to N do
read(A[i])
end for
1 6
Misalkan dibaca: 6,6,8,3,2,1 2 6
3 8
4 3
5 2
6 1
Mencetak Elemen-
Elemen Larik
Untuk mencetak elemen-elemen larik, maka kita menuliskan nilai-nilai di
dalam setiap elemen larik ke piranti keluaran, misalnya ke layar komputer.
Dalam hal ini, elemen larik dicetak satu per satu mulai untuk elemen pertama
sampai elemen ke-N
PROGRAM CetakLarik
{Program untuk mencetak larik}
DEKLARASI
i: integer
A: array [1..N] of integer
ALGORITMA
read(N)
for i1 to N do
write(A[i])
end for
Mencari Nilai
Maksimum Larik
• Nilai maksimum pada larik integer/real adalah elemen larik
yang
mempunyai nilai terbesar di antara elemen larik lainnya.
6
1 6
2
3 88 Nilai Maksimum
4 3
5 2
6 1
DEKLARASI
A: array [1..N] of integer
i: integer
ALGORITMA
maks A[1]
read(N)
for i 2 to N do
if A[i] > maks then
maks i
end if
end for
Menyalin
Larik
Diberikan sebuah larik integer A yang sudah
terdefinisi elemen- elemennya. Ukuran larik adalah
N elemen. Kita ingin menyalin (copy) elemen-
elemen larik A ke6 dalam larik yang
6 lain misalnya B.
6 6
A B
8 8
1
2
3 3
2 2
3 1 1
4
5
6
Pseudocode
Menyalin Larik
PROGRAM SalinLarik
{Program untuk menyalin elemen di dalam larik A
ke B}
DEKLARASI
A,B: array [1..n] of integer
i: integer
ALGORITMA
read(n)
for i 1 to n do
B[i] A[i]
end for
Larik Bertipe
Terstruktur
• Contoh-contoh algoritma yang dibahas sebelum ini
menggunakan
larik dengan elemen yang bertipe sederhana.
•• Elemen
Sebagai larik juga dapat bertipe
misalkan terstruktur.
kita akan mengolah data 100 orang
mahasiswa.
contoh, setiap mahasiswa terdiri dari NIM, nama
mahasiswa,
Data dan IPK. Struktur lojik dari larik Mhs ditunjukkan seperti
berikut ini:
NIM NamaMhs IPK
1 129801 Panji Bonar 3.04
2 129804 Ki Jambrong 2.80
3 … … …
. … … …
. … … …
100 129880 Roy Suryo 2.00
B
Deklarasi Larik Bertipe
Terstruktur
DEKLARASI
const Nmaks = 100
type Mahasiswa: record <NIM: string,
NamaMhs: string,
IPK: real>
type TabelMhs: array[1..Nmaks] of Mahasiswa
Mhs: TabelMhs
Untuk mencetak kita tidak dapat melakukan elemen larik seperti di bawah ini:
write(Mhs[i])
Namun harus seperti berikut ini:
write(Mhs[i].NIM,Mhs[i].IPK,Mhs[i].NamaMhs)
Latihan
Soal
Diberikan nilai ujian n orang mahasiswa telah disimpan di dalam larik
NilUjian. Kita akan menghitung nilai indeks (A/B/C/D/E) dari
mahasiswa tersebut dan menyimpan nilai indeks tersebut di dalam
larik Indeks. Indeks nilai ujian ditentukan sebagai berikut: