TIPE ENUMERASI DAN SUB JANGKAUAN

Slides:



Advertisements
Presentasi serupa
PROCEDURE Temu IX BANGHER.
Advertisements

Dasar Komputer & Pemrog 2 A minggu 5. PROCEDURE DAN FUNCTION Procedure dan Function adalah suatu program yang terpisah dalam blok sendiri Dan memiliki.
Gerlan A. Manu, ST.,MKom - Algoritma Pemrograman I
PROCEDURE  PROCEDURE   Prosedur diawali dengan kata cadangan Procedure di dalam bagian deklarasi prosedur. Prosedur dipanggil dan digunakan di dalam blok.
TIPE data Tipe data yang dikenal dalam bahasa pascal antara lain :
Struktur program pascal
Pengenalan Bahasa Pemrograman Pascal
Praktikum pemprograman terstruktur1
Rahmat Deddy Rianto Dako, ST, M.Eng
PASCAL 2.
Rekaman – Record Pada Pascal
VARIABEL DAN OPERATOR.
Chapter 3.2 : Tipe, Nama dan Nilai
ARRAY Suatu array (larik) adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. Komponen ini disebut dengan.
INTRODUCTION TO PASCAL
Dasar Pemrograman MODUL 08 FUNGSI STANDAR & INPUT OUTPUT.
Dasar Komputer & Pemrog. 2A
PROSEDUR.
Basic Concept with Pascal
Outline Awalnya dikembangkan oleh Borland dan umunya igunakan untuk paket perangkat lunak tingkat lanjut dengan kepustakaan yang lebih banyak dan.
T I P E D A T A.
Algoritma (Struktur, Tipe Data, Input/Output)
Notasi Algoritma.
Pemrograman Visual (Borland Delphi 7.0)
Dasar Pemrograman PASCAL I
SET/HIMPUNAN PADA PASCAL
Tipe data. Data adalah fakta atau kenyataan yang tercatat mengenai suatu obyek Fakta merupakan keterangan tentang kenyataan yang disimpan, direkam atau.
KOMENTAR Komentar dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks yang ditulis sebagai komentar tidak akan dikompilasi.
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
BAB 6 FUNGSI DAN PROSEDUR.
JENIS-JENIS DATA Pertemuan 2.
ALGORITMA PEMROGRAMAN 2A
Pertemuan 2 Muhamad Haikal, S.Kom., MT
Notasi Algoritma & Tipe Data
Struktur Program Pascal
Dasar-Dasar Pemrograman
Algoritma pemrograman 2a
Tipe, Nama, dan Nilai Anifuddin azis.
Algoritma dan Pemrograman 2A
BAB 2 Elemen Dasar.
ALGORITMA PEMROGRAMAN 2A
PERTEMUAN 3 KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
BAB 3 EKSPRESI BOOLEAN.
KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
MENGENAL LEBIH LANJUT TENTANG
Konsep Dasar Bahasa Pascal
FKIP Pend. Matematika Universitas Muhammadiyah Gresik
Variabel operator tipe data
BAB 5 PENGULANGAN PROSES.
Tipe, Nama, dan Nilai.
Bahasa Pemrograman A Elemen-Elemen Pascal.
Algoritma dan Pemrograman
PEMROGRAMAN PASCAL ELEMEN PEMROGRAMAN PASCAL.
Pengenalan Type Data Type data dapat dikelompokkan menjadi 2
TIPE DATA.
Tipe Data Rachmansyah, S.Kom..
Struktur Data.
KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
Pertemuan 2 Algoritma dan Pemrograman
Tipe data.
Dasar Struktur Data Ika Menarianti.
ARRAY (LARIK) MINGGU VI.
Struktur Data.
Chapter 3.2 : Tipe, Nama dan Nilai
KOMENTAR Komentar dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks yang ditulis sebagai komentar tidak akan dikompilasi.
Algoritma 1 Temu 2.
Bahasa Pemrograman A M7. Function Pada Pascal.
KOMENTAR Komentar dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks yang ditulis sebagai komentar tidak akan dikompilasi.
BAB 6 SUB PROGRAM.
BAB 7 EKSPRESI BOOLEAN.
Transcript presentasi:

TIPE ENUMERASI DAN SUB JANGKAUAN BAB 8 TIPE ENUMERASI DAN SUB JANGKAUAN

Bab 8 8.1 Tipe Enumerasi 8.2 Subjangkauan (Subrange)

8.1 Tipe Enumerasi Enumerasi merupakan salah satu tipe yg dapat dibuat sendiri oleh pemrogram. Tipe ini biasa digunakan pada variabel yg nilai kemungkinannya terbatas (tidak begitu banyak). Nilainya dinyatakan dengan nama-nama pengenal. Dengan menggunakan pengenal maka diharapkan akan lebih memberikan kejelasan, daripada kalau memakai kode 0,1,2 dan seterusnya.

8.1 Tipe Enumerasi 8.1.1 Pendeklarasian Enumerasi 8.1.2 Operasi pada Tipe Enumerasi 8.1.3 Dari Nilai Ordinal ke Nilai Enumerasi

8.1.1 Pendeklarasian Enumerasi Tipe enumerasi bisa dibuat pada bagian TYPE. Bentuk pendeklarasiannya: TYPE nama_tipe=(pengenal_1, pengenal_2, …, pengenal_n); Sebagai contoh: SistemOperasi = (UNIX, MS_DOS, OS_2, WINDOWS_NT, dan WINDOWS_95 Pada contoh ini tipe SistemOperasi berisi 5 pengenal yaitu UNIX, MS_DOS, OS_2, WINDOWS_NT dan WINDOWS_65. Setelah membuat tipe seperti di atas, Anda dapat mendeklarasikan variabel seperti berikut: VAR SisOp : SistemOperasi;

Pendeklarasian variabel seperti berikut: SisOp : (UNIX, MS_DOS, OS_2, WINDOWS_NT, WINDOWS_95); juga diperkenankan. Tetapi biasanya yg dipakai adalah melalui pembuatan tipe terlebih dahulu.

Apa arti pendeklarasian seperti: SisOp : SistemOperasi; Inilah yg perlu diperhatikan. Pendeklarasian di atas menyatakan bahwa variabel SisOp bertipe enumerasi, yakni SistemOperasi. Dalam hal ini SisOp dapat berisi salah satu pengenal berikut: UNIX MS_DOS OS_2 WINDOWS_NT WINDOWS_95

Bentuk seperti : TYPE SistemOperasi = (UNIX, MS_DOS, OS_2, WINDOWS_NT, WINDOS_95); Kira-kira sepadan dengan pendeklarasian: CONST UNIX = 0; MS_DOS = 1; OS_2 = 3; WINDOWS_NT = 4; WINDOWS_95 = 5; Tetapi dengan menggunakan enumerasi, pendeklarasiannya menjadi lebih sederhana.

8.1.2 Operasi pada Tipe Enumerasi Setiap pengenal pada tipe enumerasi mempunyai nilai internal yg disebut sebagai nilai ordinal. Pada pendeklarasian: TYPE SisOp = (UNIX, MS_DOS, OS_2, WINDOWS_NT, WINDOWS_95) Nilai ordinal UNIX adalah 0. Nilai ordinal MS_DOS adalah 1. Nilai ordinal OS_2 adalah 2. Nilai ordinal WINDOWS_NT adalah 3. Nilai ordinal WINDOWS_95 adalah 4. Nilai ordinal tersebut ditentukan oleh urutan pengenal dalam pendeklarasian. Berdasarkan nilai ordinal maka relasi berikut berlaku: UNIX < MS_DOS < OS_2 Semua operator relasi (=, <>, <, >, <=, >=) dapat dikenakan pada tipe enumerasi. Ekspresi seperti berikut: UNIX <> MS_DOS UNIX < MS_DOS WINDOWS_95 > WINDOWS_NT memberikan nilai TRUE. Sebelum melangkah lebih jauh, ada 3 fungsi yg dapat dikenakan pada tipe enumerasi . Ketiga fungsi tersebut dapat dilihat pada tabel 1.

Tabel 1. Fungsi untuk tipe enumerasi Keterangan Ord(x) Memperoleh nilai ordinal dari x Pred(x) Memperoleh nilai pendahulu dari (predecessor) dari x Succ(x) Memperoleh nilai penerus (successor) dari x

Source code enum1.dpr :

Hasil enum1.dpr :

Fungsi Ord, Pred dan Succ dapat dikenakan pada semua tipe ordinal (misalnya Boolean, Char dan Integer). Fungsi Ord berguna untuk memperoleh nilai ordinal dari suatu nilai enumerasi. Fungsi Pred berguna unutk memperoleh pendahulu suatu nilai enumerasi. Sebagai contoh, pada pendefinisian: Pendahulu OS_2 adalah MS_DOS. Pendahulu MS_DOS adalah UNIX. Pendahulu UNIX tidak ada. Fungsi Succ digunakan untuk memperoleh penerus dari nilai enumerasi. Pada contoh di depan: Penerus UNIX adalah MS_DOS. Penerus MS_DOS adalah OS_2. Penerus OS_2 adalah WINDOWS_NT. Penerus WINDOWS_NT adalah WINDOWS_95. Penerus WINDOWS_95 tidak ada. Harap jangan kacaukan istilah “penerus” pada PASCAL dengan istilah yg sama yg biasa kita kenal sehari-hari. Sebab, sebagai contoh, fakktanya kita mengetahui bahwa sistem operasi MS_DOS bukanlah penerus dari sistem operasi Unix. Keduanya adalah 2 sistem operasi yg berbeda.

Bagaimana source code enum2. dpr jika yang pada source code enum1 Bagaimana source code enum2.dpr jika yang pada source code enum1.dpr perintah FOR…DO diganti dengan REPEAT ?

Source code enum2.dpr :

Hasil enum2.dpr :

Perlu diketahui isi dari variabel enumerasi tidak dapat ditampilkan dengan Write dan Writeln. Contoh source code enum3.dpr memberikan gagasan untuk mengetahui keadaan tersebut.

Source code enum3.dpr :

Hasil enum3.dpr :

8.1.3 Dari Nilai Ordinal ke Nilai Enumerasi Turbo Pascal menyediakan cara untuk mendapatkan nilai enumerasi melalui nilai ordinalnya. Caranya adalah dengan menyebutkan nama tipe enumerasi diikuti dengan nilai ordinalnya yg diletakkan dalam tanda kurung: nama_tipe_enumerasi(nilai_ordinal) Sebagai contoh: SistemOperasi (0) memberikan UNIX SistemOperasi (1) menghasilkan MS_DOS dan sebagainya Contoh source code enum4.dpr memberikan gambaran cara mengisi nilai enumerasi ke variabel enumerasi melalui kode yg dimasukkan dari keyboard (perhatikan deklarasi prosedur EntriKodeSisOp). Selain itu juga memberikan gambaran mengenai parameter yg bertipe enumerasi.

Source code enum4.dpr :

Hasil enum4.dpr :

8.2 Subjangkauan (Subrange) Subjangkauan merupakan suatu tipe yg menyatakan suatu jangkauan nilai dari suatu tipe yg sudah ada. Jangkauan nilai ditentukan oleh nilai terkecil dan nilai terbesar. Antara nilai terkecil dan nilai terbesar dipisahkan oleh tanda subjangkauan (..). Bentuk pendeklarasian: TYPE nama_type = nilai_terkecil…nilai_terbesar; Subjangkauan tdk dapat diterapkan untuk tipe real. Semua tipe ordinal bisa dipakai.

NilaiBulan : 1..12; {Subjangkauan dari integer} Contoh: TYPE NilaiBulan : 1..12; {Subjangkauan dari integer} Huruf kapital : ‘A’..’Z’; {Subjangkauan dari tipe char} Pada contoh di atas: TipeBulan adalah tipe dari nilai yg berkisar antara 1 sampai dengan 12. HurufKapital adalah tipe dari nilai yg berkisar antara huruf ‘A’ sampai dengan ‘Z’. Seperti halnya tipe enumerasi, tipe subjangkauan dimaksudkan untuk memberikan penjelasan kepada pembuat atau pembaca program tentang jangkauan nilai yg bakal terjadi pada suatu data.

Contoh yg lain: TYPE NamaBulan = (JAN, FEB, MAR, APR, MEI, AGU,JUN, JUL, AGU, SEP, OKT, NOP, DES); MusimDingin = JAN..MAR; Pada contoh di atas, NamaBulan adalah tipe enumerasi sedangkan MusimDingin adalah subjangkauan dari pengenal-pengenal pada NamaBulan yakni terbatas pada JAN, FEB, dan MAR.