Array (array berdimensi satu)
Catatan logika algoritma. Jum’at 31 Maret 2017
Pertemuan ke-1,2,3
-=Array=-
ARRAY BERDIMENSI SATU
Ø
Array (biasa juga disebut larik) merupakan tipe data terstruktur yang
berguna untuk menyimpan sejumlah data yang bertipe sama.
Ø
Array dapat bertipe data sederhana (byte, word, integer, real, boolean,
char, atau string), tipe bentukan (tipe terstruktur seperti Record), Dan tipe
data skalar atau subrange.
-=array=- |
Ø
Array adalah struktur data yang statik, artinya jumlah elemen array
harus sudah diketahui sebelum program dieksekusi.
Ø
Jumlah elemen array tidak dapat dirubah, ditambah, atau dikurangi selama
pelaksanaan program.
Ø
Di dalam algoritma, array dinyatakan dengan awalan huruf kapital dan
notasi [ ] dipakai untuk menyatakan data dalam array.
Contoh:
A [1, 2, 3, 4]
Gambaran
Array:
1
|
2
|
3
|
4
|
Array A è
- Pada contoh di atas,
larik A memiliki 4 buah elemen.
- Untuk menyatakan sebuah
elemen dalam array, digunakan notasi berikut: A[indeks]
- Indeks digunakan untuk
menyatakan posisi elemen. Posisi pertama diberi kode 1, posisi kedua
diberi kode 2, dan seterusnya.
Skema Umum Pendeklarasian
Array Satu Dimensi:
Array dibedakan menjadi:
v Array berdimensi satu
v Array berdimensi banyak
NamaArray :
Array[JumlahElemen] of TipeElemen
|
Mendeklarasikan Array:
X :
array [1..10] of integer
Mendeklarasikan
Array
Mendeklarasikan
array di dalam bagian deklarasi berarti:
§ Mendefenisikan banyaknya
elemen array (ukuran array), dan
§ Mendefenisikan tipe elemen
array.
Berikut contoh-contoh mendeklarasikan array di
dalam bagian deklarasi:
a. Sebagai Peubah
Misalkan:
§
A adalah array yang berukuran 50 buah elemen yang bertipe integer.
Indeks array dimulai dari 1.
§
NamaMhs adalah array yang berukuran 10 buah elemen yang bertipe string.
Indeks array dimulai dari 1.
§
NilUjian adalah peubah array yang berukuran 75 buah elemen yang bertipe
real. Indeks array dimulai dari 0.
Cara Mendefenisikan ketiga buah peubah array
tersebut di dalam bagian deklarasi adalah:
DEKLARASI
A : array[1..50] of integer
NamaMhs : array[1..10] of string
NilUjian : array[0..74] of real
Contoh Array berdimensi satu untuk menyimpan
sejumlah jenis musik.
var
NamaMusik:array[1..5] of string;
i:integer;
begin
NamaMusik[1]:= 'Jazz';
NamaMusik[2]:= 'Rock';
NamaMusik[3]:= 'Keroncong';
NamaMusik[4]:= 'Dangdut';
NamaMusik[5]:= 'Reggae';
for i:=1 to 5 do
writeln(NamaMusik[i]);
end.
|
Hasil:
Jazz
Rock
Keroncong
Dangdut
Reggae
|
b. Sebagai Tipe Bentukan
Misalkan LarikInt didefenisikan sebagai nama
sebuah tipe baru untuk array yang bertipe integer, Ukuran array adalah 5 buah
elemen.
Kita bisa mendeklarasikan sebuah peubah yang
bertipe LarikInt, misalkan peubah A.
Deklarasi:
Type
LarikInt : array[1..100] of integer
Var
A : LarikInt
Mendeklarasi array sebagai
tipe bentukan dalam program:
Program Tipe_Bentukan;
uses wincrt;
type
LarikInt = array[1..5] of string ;
var
A :
LarikInt;
i :
integer;
begin
A[1]:= 'Jazz';
A[2]:=
'Rock';
A[3]:= 'Keroncong';
A[4]:= 'Dangdut';
A[5]:=
'Reggae';
for
i:=1 to 5 do
writeln(A[i]);
end.
|
c. Mendefenisikan ukuran array
sebagai sebuah konstanta
Misalkan LarikInt dideklarasikan sebagai nama
sebuah tipe bentukan untuk array yang bertipe integer. Ukuran maksimum array
adalah 5 buah elemen. Ukuran maksimum array dinyatakan sebagai konstanta.
Kemudian,
kita bisa mendeklarasikan sebuah peubah yang bertipe LarikInt, misalkan peubah
A.
Deklarasi:
Const
Nmaks = 5
Type
LarikInt : array[1..Nmaks] of integer
Var
A :
LarikInt
Mendefenisikan ukuran array sebagai sebuah
konstanta dalam program:
Program Konstanta;
uses wincrt;
Const Nmaks=5;
type
LarikInt = array[1..Nmaks] of string ;
var
A
: LarikInt;
i
: integer;
begin
A[1]:= 'Jazz';
A[2]:=
'Rock';
A[3]:= 'Keroncong';
A[4]:= 'Dangdut';
A[5]:=
'Reggae';
for
i:=1 to Nmaks do
writeln(A[i]);
end.
|
Cara Mengacu Elemen Array
Elemen array diacu melalui indeksnya. Nilai
indeks harus terdefenisi. Berikut contoh cara mengacu elemen array:
A[4]
NamaMhs[2]
A[i]
NamaMhs[i+1]
|
Contoh-contoh memanipulasi
atau menggunakan elemen larik:
A[4]
10
NamaMhs[i]
‘Achmad’
Read(A[i])
If A[i] < 10 then
A[i] A[i] + 10
Else
…
|
Kapan Menggunakan Array:
Ø
Larik dignakan bila kita mempunyai sejumlah data yang bertipe sama, dan
kita perlu menyimpan sementara data tersebut, untuk selanjutnya data tersebut
dimanipulasi.
Ø
Dengan enggunakan array, kita dapat menghindari penggunaan nama-nama
variabel yang banyak.
Contoh:
Program menghitung nilai rata-rata dari 6 buah
data yang diinputkan.
Tanpa Array:
var x1,x2,x3,x4,x5,x6, jumlah : integer;
rerata : real;
begin
write('X1 = ');readln(x1);
write('X2 = ');readln(x2);
write('X3 = ');readln(x3);
write('X4 = ');readln(x4);
write('X5 = ');readln(x5);
write('X6 = ');readln(x6);
jumlah:= X1+X2+X3+X4+X5+X6;
rerata:=jumlah/6;
write('Rata-Rata = ',rerata:3:3);
end.
|
Menggunakan
Array:
Var
x : array
[1..6] of integer;
i, jumlah : integer;
rerata : real;
begin
for
i:=1 to 6 do
begin
write('X[',i,'] = '); readln(X[i]);
end;
jumlah := 0;
for
i:=1 to 6 do
jumlah:=jumlah + X[i];
rerata:=jumlah/6;
write('Rata-Rata = ',rerata:3:3);
end.
|
Soal Latihan:
1.
Buatlah algoritma dan program untuk menyimpan 5 buah data yang
diinputkan melalui keyboard, kemudian data tersebut dtampilkan kembali!
2.
Diketahui bilangan bulat sebagai berikut
7 19 3 10 5 11 8
Buatlah
algoritma dan program untuk menyimpan bilangan tersebut pada suatu array,
kemudian:
a.
Tampilkan bilangan yang lebih kecil
dari 10.
b.
Tambahkan dengan 3 setiap elemen yang nilainya lebih kecil dari 10.
c.
Tampilkan bilangan terbesar.
3.
Diketahui keluaran program sebagai berikut:
Masukkan
banyaknya data : 5
Data ke-1 : 3
Data ke-2 : 5
Data ke-3 : 1
Data ke-4 : 7
Data ke-5 : 2
Buatlah program untuk mengurutkan angka
secara ascending dari keluaran di atas!
4.
Hitung pangkat sebuah nilai berdasarkan angka dan nilai pangkatnya. Buat
tiga versi dari program ini menggunakan while loop, do-while dan for-loop.
Nim:1601R007
Mk: logika & algoritma