MODUL
XII
TIPE
DATA (BAG. 2)
ENUMERASI
A. TUJUAN
- Mengenal
bermacam-macam tipe data dalam Pascal
- Mengenal dan
memahami tipe data enumerasi
- Mampu
mengaplikasikan berbagai macam tipe data dalam Pascal
B. DASAR
TEORI
Tipe data enumerasi merupakan tipe
data yang berisi sejumlah pengenal yang diciptakan sendiri oleh pemrogram.
Dalam sebuah program, tipe data enumerasi harus dideklarasikan terlebih dahulu
pada bagian deklarasi di awal program. Bentuk umum deklarasi tipe data
enumerasi adalah sebagai berikut :
TYPE
nama_tipe = (pengenal_1, pengenal_2, ..., pengenal_n);
VAR
nama_var :
nama_tipe;
pengenal_1, pengenal_2, ..., pengenal_n tidak boleh berupa bilangan. Tipe data enumerasi
memiliki nilai ordinal pada masing-masing pengenal yang dimiliki. Nilai ordinal
berawal dari pengenal yang pertama sampai terakhir. Pengenal pertama memiliki
nilai ordinal 0, selanjutnya adalah 1, kemudian 2, dan seterusnya. Jadi, pengenal_1 memiliki nilai ordinal 0. pengenal_2 memiliki nilai ordinal 1, dan
seterusnya. Sehingga pengenal_n
miliki nilai ordinal n-1. Pengurutan ini disebut ordinary. Jadi ordinary
dari pengenal_n adalah n-1.
Dalam data enumerasi, masing-masing
pengenal memiliki kedudukan terhadap pengenal yang lain. Pada pengenal di
ordinary tertentu, ada pengenal yang berada tepat sesudahnya, dan ada pengenal
yang terletak tepat sebelumnya. Pengenal yang berbeda tepat sesudahnya disebut
sebagai successor. Pengenal yang
berada tepat sebelumnya disebut sebagai predecessor.
Jadi, pengenal_n pada successor-nya adalah pengenal_n+1 dan predecessor adalah pengenal_n-1.
C. LATIHAN
SOAL
- Nomor Program 1201
Tulislah program berikut dan amatilah outputnya!
PROGRAM enumerasi;
USES CRT;
TYPE
hari = (Minggu,
Senin, Selasa, Rabu, Kamis, Jumat, Sabtu);
VAR
today : hari;
BEGIN
CLRSCR;
WRITELN(‘Nilai
Ordinal Senin-Sabtu’);
FOR today :=
Minggu TO Sabtu DO
WRITELN(ord(today));
WRITELN;
WRITELN(‘Hari ini
adalah hari SELASA’);
WRITELN(‘Hari ini
adalah hari ke- ‘,ord(selasa));
WRITELN(‘Kemaren
adalah hari ke- ‘,ord(pred(selasa)));
WRITELN(‘Besok
adalah hari ke- ‘,ord(succ(selasa)));
WRITELN(‘Lusa
adalah hari ke- ‘,ord(succ(succ(selasa))));
REPEAT UNTIL
KEYPRESSED;
END.
- Nomor Program 1202
Buatlah program untuk menampilkan nilai ordinari
dari tipe data enumerasi yang dibuat dengan menggunakan nama-nama saudara anda
(kakak/adik)!
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
- Nomor Program 1203
Deklarasi tipe data enumerasi untuk menampung
pengenal yang berupa nama-nama bulan. Kemudian buatlah program untuk
menampilkan 1 s.d. 12 yang berasal dari nilai ordinari dari tipe data yang
sudah anda buat!
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
- Nomor Program : -
Di bawah ini adalah bagian deklarasi suatu program
yang menggunakan tipe data terenumerasi :
TYPE
nama_bulan =
(JANUARI, FEBRUARI, MARET, APRIL, MEI, JUNI,
JULI, AGUSTUS, SEPTEMBER, OKTOBER,
NOPEMBER, DESEMBER);
VAR
month :
nama_bulan; i : integer;
Tentukanlah tipe data dan nilai dari
ungkapan-ungkapan berikut :
ORD(JANUARI) = ...
ORD(OKTOBER) = ...
SUCC(JANUARI) = ...
PRED(DESEMBER) = ...
SUCC(PRED(MARET)) = ...
PRED(SUCC(MARET)) = ...
ORD(SUCC(JANUARI)) = ...
ORD(PRED(DESEMBER)) = ...
SUCC(SUCC(MARET)) = ...
PRED(PRED(MARET)) = ...
ORD(PRED(SUCC(MARET))) = ...
ORD(SUCC(PRED(MARET))) = ...
ORD(SUCC(SUCC(MARET))) = ...
Tidak ada komentar:
Posting Komentar