PERTEMUAN KE V TIPE DATA LANJUT 5.1 Tujuan Praktikum Praktikan diharapkan dapat mengerti konsep dan kegunaan dari enumerasi, struktur dan class serta dapat menerapkannya dalam program. 5.2 Teori Penunjang Enumerasi Enumerasi adalah tipe data yang merupakan himpunan konstanta dengan urutan tertentu, dimana nilai-nilai dari konstanta bertipe integer. Bentuk umum : enum nama_enumerasi { konstanta_1 = value_1, konstanta_2 = value_2, ...} variabel_1, ..., variabel_N; Ket : enum reserved word yang harus digunakan nama_enumerasi nama enumerasi yang dibuat, sifatnya optional nama ini akan menjadi tipe dari variabel_1,... { dan } konstanta berikut nilainya dituliskan diantara tanda ini konstanta nama dari masing-masing konstanta, antara konstanta dipisahkan oleh tanda koma ( , ) value sifatnya optional (dapat ditulis / tidak ditulis) bila tidak ditulis maka nilai default value pertama adalah nol , dan value berikutnya value_sebelum + 1 nilai dari value berupa integer variabel sifatnya optional. Bila lebih dari satu dipisahkan dengan tanda koma dan variabel terakhir diakhiri dengan tanda titik koma ( ; ) Contoh : Enum hari {senin,selasa,rabu,kamis,jumat,sabtu}; Enum golongan {manajer = 1, asisten_manajer, karyawan} deklarasi Cout << senin; outputnya = 0, karena menggunakan harga default Cout << karyawan; outputnya = 3, karena harga awal manajer = 1 dan harga selanjutnya tidak disebutkan, maka setiap bergeser ke konstanta berikutnya, nilai bertambah satu. Struktur Struktur adalah kumpulan dari variabel/data dengan tipe yang berbeda pada satu nama. Variabel tersebut merupakan elemen dari struktur. Pada Pascal struktur disebut dengan record. Default dari sifat elemen struktur adalah public. Bentuk umum : Deklarasi struct nama_struktur { tipe elemen1,elemen2, ...; . : tipe elemenN, ... ; } var_struktur1, ..., var_strukturN; Akses var_struktur.elemen; Ket : struct reserved word yang harus digunakan nama_struktur nama struktur, sifatnya optional { dan } elemen dari struktur dituliskan diantara tanda ini tipe tipe data dari elemen struktur elemen merupakan elemen dari struct. Bila tipe datanya sama dapat dituliskan dalam satu baris, dengan dipisahkan oleh tanda koma dan diakhiri dengan tanda titik koma. elemen dari suatu struktur dapat berupa struktur. var_struktur variabel struktur yang dideklarasikan, bila lebih dari satu dipisahkan oleh tanda koma. Sifatnya optional, tetapi nama_struktur dan var_struktur harus dituliskan salah satunya. tanda titik ( . ) untuk mengakses elemen struct Contoh : struct data { char nama[10]; char npm[8]; deklarasi int nilai; } data_mhs; cin >> data_mhs.nama; cout << data_mhs.npm; akses data_mhs.nilai = 8; Class Class adalah kumpulan dari data dan fungsi yang menjadi satu kesatuan. Data dan fungsi ini menjadi member/elemen dari class. Default dari sifat elemen class adalah private. Bila sifat dari suatu elemen diubah, maka sifat tersebut harus dituliskan ( public / protected). Class hanya terdapat pada C++. Bentuk umum : Deklarasi Class nama_class { tipe nama_var1; tipe nama_varN: tipe nama_fungsi_1( ); tipe nama_fungsi_N( ); } nama_object1, ... ,nama_objectN; Akses nama_object.nama_var; nama_object.nama_fungsi( ); Ket : class reserved word yang akan digunakan nama_class nama dari class yang dibuat { dan } member dari class dituliskan diantara tanda ini tipe tipe dari suatu data ataupun fungsi nama_var variabel yang digunakan nama_fungsi fungsi yang digunakan nama_object nama yang akan digunakan pada program yang memiliki tipe nama_class. Sifatnya optional. tanda titik ( . ) untuk mengakses suatu variabel atau fungsi Contoh : class harga { char nm_brg[10]; double harga; deklarasi int jumlah; void total( ); } tot_harga; cin >> nm_brg; cin >> tot_harga.nm_brg; akses cout >> tot_harga.harga; tot_harga.total( ); 5.3 Laporan Pendahuluan 1. Apa yang dimaksud dengan enumerasi, struct dan class ? 2. Sebutkan perbedaan antara struct dan class ! 3. Tuliskan bentuk umum dari enumerasi, struct dan class ! 4. Buat program sederhana menggunakan struct ! 5.4 Materi 1. Memberikan penjelasan mengenai konsep enumerasi, struct dan class 2. Memberikan contoh program sederhana untuk masing-masing tipe data 3. Nilai K, membuat program struct bersarang atau struct dengan array 5.5 Laporan Akhir Membuat program dengan menggunakan kombinasi antara struct dengan array atau program menggunakan class disertai logika program.