Belajar Pemrograman C #10: Mengenal Tipe Data Enum

Belajar Pemrograman C #10: Mengenal Tipe Data Enum
Belajar Pemrograman C #10: Mengenal Tipe Data Enum

Apakah kalian masih ingat dengan pembahasan kita tentang tipe data pada c ?

pada C/C++ terdapat beberapa tipe data dasar, void,turunan dan juga tipe data bentukan atau enum

Table Of Contents

beberapa tipe data turunan sudah pernah kita bahas, silahkan baca disini :

sekarang kita akan bahas tentang enum.

dimulai dengan pembahasan :

apa sih enum itu ?

bagaimana cara membuatnya ?

mengapa kita harus mengunakan enum itu ?

mari kita bahas….

 

Apa itu enum ?

Enum adalah singkatan dari enumeration,enum merupakan salah satu jenis tipe data bentukan dalam bahasa pemrograman C/C++.

Enum adalah tipe data bentukan penguna (user-defined data type) dimana nilainya terbatas hanya pada himpunan nilai dalam konstanta yang ditentukan sendiri (nilai yang diperbolehkan untuk disimpan dalam bentuk variabel)

 

nilai yang terbatas pada nilai konstanta yang ditentukan sendiri disebut dengan enumerator.variabel/objek bertipe enum hanya dapat menyimpan satu dari setnilai yang ditentukan tersebut

kapan kita perlu mengunakan enum?

  • Enum digunakan ketika kita hanya menginginkan nilai nilai tertentu (setnilai) yang dapat digunakan dalam variabel. sebagai contoh misalnya memiliki tipe enum merek handphone cina yang hanya menampung nilai konstanta xiomi,oppo dan redmi. jika suatu objek dideklarasikan dengan tipe enum tadi,maka variabel tersebut hanya dapat diisi dengan nilai dari 3 konstanta tadi,selain itu maka akan dianggap error/salah.
  • ketika ingin mencegah terjadinya kesalahan input nilai variabel.suatu objek yang dideklarasikan mengunakan tipe enum maka variabel tersebut hanya dapat menampung nilai yang termasuk kedalam nilai yang ditentukan.selain itu akan bernilai salah saat di compile.hal ini mencegah terjadinya kesalahan pemroses data.
  • ketika menggunakan switch/case.nilai setiap blok case dapar didefiniskan pada enum sehingga dapat dipastikan bahwa nilai yang digunakan adalah nilai yang dapat diterima.

dari sisi efisiensi pengunaan memory,enum membutuhkan lebih sedikit memory dibandingkan dengan arrya dan structur.enum hanya menggunakan satu nilai dari konstanta yang ada,sedangkan structur dan array ukurannya menyesuaikan dengan banyaknya nilai yang ada.

Mendeklarasikan Tipe Enum

sebelum dapat digunakan suatu tipe enum kita harus mendeklarasikan terlebih dahulu. adapun sintaks pendeklarasian enum dibawah ini:

enum nama tipe {n1, n2, n3,….., nN};

keterangan:

  • enum : keyword yang digunakan untuk mendeklarasikan enum.
  • nama tipe : diisi dengan nama yang diinginkan yang mempresentasikan setnilai konstanta yang akan digunakan.
  • n1,n2,….,nN : konstanta pertama,kedua,hingga Ke-N yang dapat digunakan jika suatu objek dibentuk menggunakan enum saat ini.

agar dapat dipahami pengunaan sintaks diatas,perhatikan dibawah ini

enum harikantor {

senin,

selasa,

rabu,

kamis,

jumat,

sabtu

};

keterangan:

  • enum : keyword enum untuk mendeklarasikan enumerasi
  • harikantor : nama tipe enum yang diinginkan
  • senin,selasa,rabu,kamis,jumat,sabtu : konstanta yang menampung nilai yang dimasukan kedalam variabel/objek yang dibentuk dari enum harikantor
  • koma (,) ; jika enum dari satu,maka pisahkan dengan koma (,)
  • tanda kurung kurawal ({}) : area pendeklarasian nilai enum
  • tanda titik koma (;) : akhiri dengan titik koma (;)

jika enum diatas dideklarasikan, maka akan terbentuk tipe enum harikantor dan secara default konstanta yang ada dipada tipe harikantor menampung nilai yang dimulai dari 0 hingga sebanyak N konstanta.

seperti ditampilkan berikut ini:

 

SENIN      = 0

SELASA    = 1

RABU        = 2

KAMIS      = 3

JUMAT     = 4

SABTU      = 5

 

Inisialisasi Nilai Konstanta Enum

jika ingin mengubah nilai default dari konstanta, maka cukup dengan menginisialiasikan nilai pada konstanta enum.

contoh:

enum harikantor {

senin   = 1,

selasa  = 2,

rabu    = 3,

kamis  = 4,

jumat  = 5,

sabtu   = 6

};

namun jika bentuk penginisialisasiannya seperti berikut ini

enum harikantor {

senin,

selasa,

rabu =5,

kamis,

jumat,

sabtu

};

maka nilai yang akan ditampung oleh konstanta adalah sebagai berikut:

enum harikantor {

senin  = 0,

selasa = 1,

rabu   = 5,

kamis = 6,

jumat = 7,

sabtu = 8

};

dapat kalian lihat bahwa konstanta senin dans selasa bernilai 0 dan 1, sedangkan konstanta rabu hingga sabtu nilainya berlanjut yakni 6,7,dan 8.

Mendeklarasikan Objek Enum

objek/variabel yang dibentuk dari tipe enum hanya akan menerima nilai konstanta yang terdefinisikan pada pendeklarasian tipe enum pembentukan objek tersebut.

adapun sintaks pendeklarasian objek dari tipe enum yang dibentuk sebagai berikut:

enum nama_tipe{n1, n2, n3, …., nN}

nama_objek;

keterangan:

  • nama_objek : diisi dengan nama objek/variabel yang kita inginkan.jika variabel atau objek ini dibentuk dari suatu enum, maka objek tersebut hanya bisa dapar menampung nilai konstanta yang telah didefinisikan pada saat pendeklarasian tipe enum.

Membuat program dengan enum

sekarang kita akan membuat sebuah progtam dengan enum

silahkan kalian buat program baru dengan bernama contoh_enum.c ,kemudian diisi dengan kode berikut:

#include <stdio.h>

enum hari {senin, selasa, rabu, kamis, jumat, sabtu, minggi};

void main () {

enum hari sekarang;

sekarang = rabu;

printf (“Sekarang hari ke-%d”, sekarang + 1);

}

setelah itu,coba kalian runkan

maka hasilnya seperti ini

Membuat tipe data boolean dari enum

bahasa pemrograman C/C++ tidak memiliki tipe data boolean seperti bahasa lain.

namun, kita bisa membuatnya sendiri…

pada bahasa C/C++ , nilai True akan sama dengan 1 dan false sama dengan 0

maka kita bisa membuat enum untuk boolean seperti dibawah ini:

enum boolean {false, true};

mari kita coba dalam program cekidott….

buatlah nama program contoh_boolean.c kemudian diisikan kode ini:

#include <stdio.h>

enum boolean {false, true};

void main () {

int a = 4;

int b = 5;

if(a < b ==true){

printf(“variabel a lebih kecil b\n”);

}

}

maka kalau dirunkan hasilnya seperti ini:

 

Apa selanjutnya?

kita sudah belajar dasar-dasar tentang enum, selanjutnya kita kana pelajari tentang

  • Belajar C #11: Mengenal Structure
  • Belajart C #12 : Mengenal Pointer

© 2023 vishal majumdar - wordpress theme by. Crypto tech news 24. Click the gallery link above & view the installations of our curtains in dubai & blinds in dubai.