Anda di halaman 1dari 11

Array (Larik)

Algoritma Tanpa_Array Algoritma Pakai_Array

Deklarasi Deklarasi
XI : Integer X : array [1..5] of Integer
I : Integer I : Integer

Deskripsi Deskripsi
For I  1 to 5 do For I  1 to 5 do
read (XI) read (X[I])
Endfor Endfor

For I  1 to 5 do For I  1 to 5 do
write (XI) write (X[I])
Endfor Endfor
Array
1. Sebagai peubah

Deklarasi
L : Array [1..50] of integer
Nama_mhs : array [‘a’.. ‘j’] of string
NilUjian : array [0..74] of real
Array
2. Sebagai tipe baru

Deklarasi
type TabInt : array [1..100] of integer
P : TabInt
Array
3. Mendefinisikan ukuran maksimum elemen larik
sebagai sebuah tetapan (kontansta)

Deklarasi
Const Nmaks = 100
type TabInt : array [1..Nmaks] of integer
P : TabInt
Algoritma MENGHITUNG NILAI_RATA_RATA
{ Menghitung nilai rata-rata sekumpulan bilangan bulat yang dibaca dari piranti
masukan }
DEKLARASI
x : integer { peubah data bilangan bulat}
N : integer { banyaknya data bilangan bulat, N > 0}
k : integer { pencacah jumlah pengulangan}
jumlah : integer { jumlah seluruh data bilangan bulat}
rata : integer { rata-rata data bilangan bulat}

DESKRIPSI
read (N) k { baca banyaknya data}
1 { mulai dari data pertama}
jumlah  0
while k ≤ N do
read (x)
jumlah  jumlah + x
k  k+1 { cacah pengulangan selanjutnya}
endwhile

rata  jumlah / N { rata-rata data bilangan bulat }


write (rata)
Algoritma MENGHITUNG_NILAI_RATA_RATA_LARIK
{ Menghitung nilai rata-rata sekumpulan bilangan bulat yang dibaca dari piranti masukan
menggunakan tipe data larik}

DEKLARASI
x : array [1..100] of integer { peubah data bilangan bulat}
N : integer { banyaknya data bilangan bulat, N > 0}
k : integer { pencacah jumlah pengulangan}
jumlah : integer { jumlah seluruh data bilangan bulat}
rata : integer { rata-rata data bilangan bulat}

DESKRIPSI
read (N) k { baca banyaknya data}
1 { mulai dari data pertama}
jumlah  0
while k ≤ N do
read (x[k])
jumlah  jumlah + x[k]
k  k+1 { cacah pengulangan selanjutnya}
endwhile

rata  jumlah / N { rata-rata data bilangan bulat }


write (rata)
Procedure RERATA (input N : integer ) Algoritma MENGHITUNG NILAI_RATA_RATA
{K.awal elemen larik x sudah terdefinisi ; N { Menghitung nilai rata-rata sekumpulan
adalah banyak data, nilainya sudah bilangan bulat yang dibaca dari piranti
terdefinisi masukan }
{K.Akhir berisi nilai rata rata seluruh elemen.}
DEKLARASI
DEKLARASI N : integer { banyaknya data bil. bulat, N > 0}
x : array [1..100] of integer rata : real
k : integer { indeks larik} jumlah : integer {jumlah seluruh data bil.
bulat}
DESKRIPSI Procedure RERATA (input N : integer )
k1 { mulai dari data pertama} { Menghitung nilai rata-rata elemen larik x}
jumlah  0 {K.awal elemen larik x sudah terdefinisi ; N
while k ≤ N do adalah banyak data , nilai nya sudah
read (x[k]) terdefinisi .}
jumlah  jumlah + x [k] {K.Akhir rata berisi nilai rata rata seluruh
k  k+1{ cacah pengulangan selanjutnya} elemen.}
endwhile DESKRIPSI
read (N) { baca banyaknya data}
RERATA (N)
rata  jumlah / N { rata-rata data bilangan
bulat }
write (rata)
Array Bertipe Struktur
Deklarasi
Const Nmaks = 100
Type Mahasiswa : record < NPM : integer, {Nomor Pokok Mahasiswa}
NamaMhs : string, {nama mahasiswa}
KodeMK : string, {kode mata kuliah}
Nilai : char
>
TabMhs : array [1..Nmaks] of Mahasiswa
Algoritma BACA_LARIK_MHS
{Mengisi elemen larik mhs dgn data yang dibaca dari piranti masukan}
DEKLARASI
const Nmaks = 100
type mahasiswa : record < NPM : integer, {Nomor Pokok Mahasiswa}
NamaMhs : string, {nama mahasiswa}
KodeMK : string, {kode mata kuliah}
Nilai : char >
TabMhs : array [1..Nmaks] of Mahasiswa
k : integer
N : integer
DESKRIPSI
read (N)
for k ←1 to N do
read (TabMhs[k].NPM)
read (TabMhs[k].NamaMhs)
read (TabMhs[k].KodeMK)
read (TabMhs[k].Nilai)
endfor
Tugas Array
1. Tuliskan algoritma menggunakan array untuk
kasus dibawah ini :
a. Mencari bilangan terbesar dari n bilangan
yang dimasukkan melalui peranti masukan.
b. Penjumlahan matriks 2x2

2. Tuliskan programnya menggunakan C++


untuk soal No. 1.

Anda mungkin juga menyukai