"~Selamat Datang di Web Blog Sri Winda~"

Pages

Subscribe:

Selasa, 30 Januari 2018

MODUL 12 TIPE DATA (bagian2) ENUMERASI

MODUL XII
TIPE DATA (BAG. 2)
ENUMERASI

A.    TUJUAN
  1. Mengenal bermacam-macam tipe data dalam Pascal
  2. Mengenal dan memahami tipe data enumerasi
  3. 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
  1. 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.

  1. Nomor Program 1202
Buatlah program untuk menampilkan nilai ordinari dari tipe data enumerasi yang dibuat dengan menggunakan nama-nama saudara anda (kakak/adik)!
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
  1. 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!
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................

  1. 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

 
Blogger Templates