Tipe Data dan Operator pada C dan C++ (Tipe data, Variabel, Konstanta, Operator)
A. Tipe Data Dasar
Tipe data adalah himpunan nilai yang dapat dimiliki oleh sebuah data. Tipe data menentukan apakah sebuah nilai dapat dimiliki sebuah data atau tidak, serta operasi apa yang dapat dilakukan pada data tersebut. Contoh tipe data dalam dunia nyata adalah bilangan bulat. Jika sebuah data, misalnya umur, harus berupa bilangan bulat maka dapat dipastikan bahwa 25, 13, 7 dapat menjadi nilai umur, sedangkan 7.5, 19.655 bukan merupakan contoh dari nilai umur.
Tipe data dasar adalah tipe data yang dapat langsung digunakan. Secara umum terdapat 2 tipe data dasar, yaitu numerik dan kategorik. Tipe data numerik terdiri atas angka/ kumpulan angka serta dapat mengalami operasi perhitungan, sedangkan tipe data kategorik dapat berupa angka maupun huruf namun tidak dapat mengalami operasi perhitungan. Berikut merupakan contoh beberapa tipe data dasar :
1. Integer/ bilangan bulat
Integer adalah tipe data dasar berupa bilangan yang tidak mengandung pecahan desimal. Tipe data ini juga memiliki urutan, sehingga dapat dibandingkan satu dengan lainnya.
Contoh integer: 2 5 -10 135 2008
tipe data integer tidak memiliki batasan, yaitu dari minus tak hingga hingga plus tak hingga. Namun dalam pemrograman yang menggunakan bahasa pemprograman C++, secara umum dikenal beberap macam tipe data integer, yaitu:
2. Real/ bilangan riil
Real adalah tipe data dasar berupa bilangan yang memiliki pecahan desimal. Dalam pemrograman, nilai dengan tipe data ini harus ditulis dengan sebuah titik sebagai pemisah bilangan utuh dan bilangan pecahannya.
Tipe data ini digunakan untuk perhitungan yang melibatkan bilangan pecahan, seperti perhitungan kosinus, akar persamaan, dan sebagainya. Tipe data ini juga memiliki urutan, sehingga dapat dibandingkan satu dengan lainnya.
Contoh real: .5 0.17 -3.465 92.0 4.3000+E9
Secara teoritis, tipe data real juga tidak memiliki batasan, yaitu dari minus tak hingga hingga plus tak hingga. Namun dalam pemrograman, secara umum dikenal beberapa macam tipe data real, yaitu:
Nilai pada tabel diatas berbeda dengan nilai yang ada pada tabel tipe data integer, pada tabel diatas nilai untuk tipe data merupakan tingkat ketelitian untuk masing-masing tipe data, bukan berdasarkan rentang nilai.
3. Char/ Karakter
Char adalah tipe data dasar yang terdiri atas satu buah angka, huruf, tanda baca atau karakter khusus.
Untuk menyimpan sebuah karakter, diperlukan 1 byte atau 8 bit tempat didalam memori. Dalam sebuah program, penulisan tipe data char diawali dan diakhiri dengan tanda kutip ganda. Selain itu, terdapat sebuah karakter kosong yang disebut dengan null atau nil dan dituliskan sebagai “ ”.
Contoh char: “5” “A” “?” “+” “$”
Perhatikan bahwa 5 adalah integer sedangkan “5” adalah char.
4. String
String adalah tipe data dasar yang berupa kumpulan karakter dengan panjang tertentu. Meskipun berupa kumpulan karakter, karena tipe data string sering
digunakan dalam pemrograman, string dianggap sebagai tipe data dasar. Untuk penyimpanan string didalam memori, dibutuhkan 1 byte untuk tiap karakternya. Serupa dengan penulisan karakter, penulisan sebuah string juga harus diawali dan diakhiri dengan tanda petik ganda. String juga mengenal null yang dituliskan dengan “”.
Contoh string:
- “ABC3456”
- “Lucu”
- “30202001”
- “z”
Perhatikan bahwa sebuah karakter tunggal (“z”) juga merupakan string.
5. Boolean/ bilangan logika
Sebuah data boolean memiliki tepat dua buah kemungkinan nilai, direpresentasikan sebagai Benar dan Salah, atau True dan False, atau dapat juga dilambangkan dengan 1 dan 0. Tipe data ini dapat digunakan untuk pemilihan dengan kondisi-kondisi tertentu, dimana program harus memilih aksi apa yang akan dijalankan dengan parameter tertentu.
Tipe data ini paling sering digunakan untuk range yang memili dua buah
nilai: lulus - tidak lulus, member – bukan member,Variabel
B. Variabel atau peubah
adalah obyek yang nilainya dapat berubah-ubah dalam sebuah program. Pada saat sebuah variabel dideklarasikan, program ‘memesan’ tempat dengan ukuran tertentu (sesuai tipe datanya) pada memori untuk menyimpan nilai dari variabel tersebut. Dalam bentuk flowchart, deklarasi variabel digambarkan sebagai sebuah proses. Misalnya sebagai berikut:
Sebelum kita menuliskan beberapa program dalam bahasa C++, ada baiknya kita mengenal terlebih dahulu struktur dan format penulisan program dalam bahasa C++.
Pada contoh program diatas, pada baris pertama dituliskan diawalannya tanda doubleslash (//). Maksudnya adalah sebagai komentar, artinya baris tersebut tidak akan dieksekusi oleh program. Kita dapat menuliskan apapun setelah tanda tersebut dan berlaku hanya satu baris. Sedangkan untuk penulisan komentar lebih dari satu baris digunakan tanda /* .. */ dimana komentar dituliskan diantara tanda /* dan */ seperti tampak pada baris ke 3 dan 4. Biasanya tanda tersebut digunakan oleh programmer untuk memberi penanda atau keterangan pada tiap baris program seperti pada baris 5. Pada baris kedua terdapat code #include <stdio.h>, yang diawali dengan tanda crash (#). Ini dapat kita sebut dengan preprocessor directive. preprocessor directive merupakan perintah-perintah untuk memberitahukan kepada compiler untuk melakukan berbagaimacam definisi seperti menggunakan (include) file librari misalnya stdio.h, karena didalam file tersebut mengandung beberapa fungsi yang akan digunakan didalam program.
Sedangkan pada baris ke 5 – 8 merupakan isi dari program. Pada baris ke 5 terdapat instruksi main() dimana pada baris tersebut merupakan fungsi utama atau program utama. Maksudnya adalaha pada baris tersebut merupakan penanda awal dari eksekusi sebuah program. Untuk awal instruksi ditandai dengan kurung kurawal. Seperti pada program diatas, pada baris ke-5 (tanda {) merupakan awal dari program utama dan berakhir pada baris ke-8. Pada baris ke-6 (printf("Selamat Datang")) merupakan instruksi untuk mencetak tulisan “Selamat Datang” kelayar. Sedangkan pada baris ke-7 (return 0) merupakan nilai kembali dari fungsi utama yaitu nilainya adalah 0. Perlu diperhatikan bahwa setiap instruksi pada perogram harus diakhiri dengan tanda semicolon (;). Untuk menuliskan variabel, kita dapat menuliskannya pada bagian isi program. Contoh penulisan variabelnya adalah :
Secara teori, pemrogram dapat memberikan nama apapun pada sebuah variabel karena penamaan variabel bertujuan untuk memudahkan pemanggilan kembali. Namun, ada beberapa panduan yang biasa diacu pemrogram dalam penamaan variabel, antara lain:
Huruf pertama pada nama variabel menunjukkan tipe data dari variabel. Contoh: diawali dengan ‘c’ untuk variabel char, ‘i’ untuk integer, ‘s’ untuk string, dan seterusnya. Panduan penamaan ini disebut dengan Charles Simyoni Hungarion Notation.
Nama variabel harus cukup jelas menunjukkan tujuan penggunaan variabel tersebut.
Contoh: sNama adalah variabel string untuk menyimpan nama,
cJenisKelamin adalah variabel char untuk menyimpan jenis kelamin,
bStatus adalah variabel boolean untuk menyimpan status.
Nama variabel tidak boleh mengandung spasi kosong atau karakter khusus ! @ # $ % ^ & * ( ) { } [ ] ’ ” ; : < > , . / ? | dan \. Beberapa pemrogram menggunakan ‘_’ untuk memisahkan kata di nama variabel.
Contoh: cJenis_kelamin, sNama_orang_tua, iNilai_akhir
Cara lain untuk memisahkan kata dalam nama variabel adalah dengan memberikan huruf besar di awal tiap kata.
Contoh: cJenisKelamin, sNamaOrangTua, iNilaiAkhir
Setelah sebuah variabel dideklarasikan, variabel dapat menyimpan nilai. Pengisian nilai ke dalam sebuah variabel dalam sebuah program dapat
dilakukan dengan 2 cara, yaitu:
1. Secara langsung
Contoh:
- cJenisKelamin = ‘P’
- sNamaOrangTua = ‘Jeremy Thomas’
- iNilaiAkhir = 99
2. Dengan inputan
Contoh:
- Input (cJenisKelamin)
- Input (sNamaOrangTua)
- Input (iNilaiAkhir)
Contoh program untuk memberikan nilai pada sebuah variabel :
Pada contoh program diatas, kita melihat ada tanda “%i” dan “%s”.
Funssi tanda tersebut adalah untuk menkonfersi nilai inputan menjadi tipe
yang sesuai dengan yang diterima atau mengubah nilai dari tipe data dasar
menjadi tipe karakter untuk ditampilkan dilayar.
Karena pada dasarnya, dalam pemprograman bahasa C++ nilai input atau nilai yang dapat ditampilkan berupa karakter. Sedangkan didalam program, nilai tersebut harus sesuai dengan tipe data yang dideklarasikan. Sebagai contoh pada baris ke-10, variabel “lB” tipe datanya adalah integer.
Untuk mengubah tipe masukan menjadi integer, maka digunakan “%i”. Biasanya, string tersebut diawali dengan huruf pertama tipe datanya, misalnya float -> %f, String ->%s dan seterusnya. Khusus untuk inputan, nama variabelnya harus diawali dengan string “&” seperti tampak pada baris ke 10 dan 11.
C. Konstanta
Pada variabel, nilai yang disimpan dapat berubah-ubah selama program dijalankan. Sedangkan pada pada konstanta, nilai yang disimpan tetap dan tidak dapat diubah sejak dideklarasikan hingga program berakhir. Setelah sebuah konstanta dideklarasikan, konstanta dapat digunakan dalam program dan nilainya selalu tetap. Deklarasi konstanta dalam flowchart digambarkan sebagai sebuah proses. Misalnya:
Cara penulisan konstanta didalam program, di tulis dengan diawali dengan tanda crash (#) kemudian diikuti dengan define, selanjutnya nama konstantanya dan selanjutnya nilainya dan ditulis diluar program utama setelah pendeklarasian librari namespace. Contoh penulisannya adalah sebagai berikut
D. Operator
Operator adalah pengendali operasi yang akan dilakukan pada beberapa operan sehingga membentuk sebuah ekspresi. Secara umum, dalam sebuah ekspresi terdapat sebuah operator yang diapit dua operan. Contohnya
pada ekspresi:
x + y
x dan y adalah operan, sedangkan ‘+’ adalah operatornya
Terdapat tiga macam operator yang biasa digunakan dalam pemrograman, yaitu:
1. Operator aritmatik
Operator ini membentuk perhitungan aritmatik. Kedua operan dari operasi aritmatik ini dapat berupa nilai integer atau real. Operator yang termasuk tipe ini adalah:
Output dari operasi aritmatik akan memiliki tipe data yang sama dengan tipe data kedua operannya. Misalnya, jika sebuah bilangan integer dijumlahkan dengan bilangan integer lainnya maka outputnya adalah bilangan integer juga. Selain itu perlu diperhatikan pula bahwa sebuah operator aritmatik tidak dapat diterapkan pada dua bilangan dengan tipe data yang berbeda.
Program di atas akan mengembalikan nilai hasil penjumlahan sesuai dengan inputan. Misalnya pada inputan pertama kita masukan 10 dan yang kedia kita masukan 23 maka hasilnya adalah 33. outputnya adalah:
2. Operator Assignment
Dalam pemprograman bahasa C++, Operator ini digunakan memasukan nilai kedalam sebuah variabel, tanpa menghilangkan atau mengosongkan nilai variabel sebelumnya. Contoh penggunaan operator ini adalah sebagai berikut :
3. Increase and decrease
Penulisan ini dilambangkan dengan ++ (Increade) dan -- (decrease). Operator ini berfungsi untuk menaikan atau menurunkan satu satuan nilai pada sebuah variabel. Contoh penggunaannya adalah pada contoh dibawah ini :
Ada dua macam penulisan operator ini, yaitu simbol dapat ditulis sebelum nama variabel dan setelah variabel. Adapun perbedaab antara keduanya adalah :
4. Operator relasional
Operator ini membandingkan dua operan dan hasilnya berupa nilai boolean (BENAR atau SALAH). Operasi relasional dapat dilakukan pada dua nilai dengan tipe data yang sama: tipe data integer, riil, char, string, maupun boolean. Berikut ini adalah operator relasional:
5. Operator logika
Operator logika adalah operator yang digunakan untuk mengkombinasikan hasil ekspresi yang mengandung operator relasional.
Pola penggunaan operator logika adalah:
ekspresi1 OPERATOR ekspresi2
Output dari penggunaan operator AND dan OR adalah sebagai berikut:
Pola yang mudah untuk mengingat output kedua operator logika tersebut adalah: True AND True = True, False OR False = False. Beberapa contoh penggunaan operator logika:
(x > 7) && (x = y)
Jika ternyata nilai x adalah 8 dan y adalah 5, maka
(8 > 7) && (8 = 5)
True AND False
False (output operasi)
(x != y) || (x > 3)
Jika ternyata nilai x adalah 4 dan y adalah 4, maka
(4 != 4) || (4 > 3)
False OR True
True (output operasi)
NOT (x > y)
Jika ternyata nilai x adalah 3 dan y adalah 3, maka
NOT (3 > 3)
NOT (False)
True (output operasi)
E. Urutan Operasi
Sebuah ekspresi mungkin terdiri atas beberapa operasi sekaligus. Misalnya: iHasil = x * 2 % 2 > y && (x != 3)
Untuk menentukan operasi mana yang dilakukan terlebih dahulu daripada operasi lainnya, setiap operator memiliki level urutan. Level urutan ini terdiri atas lima kelompok, level 1 hingga 5. Operator yang memiliki level lebih tinggi (ditunjukkan dengan angka yang semakin kecil) akan dioperasikan terlebih dahulu dibandingkan operator lain yang levelnya lebih rendah. Sedangkan pada operator-operator yang berada pada level yang sama, operasi dilakukan secara berurutan dari kiri ke kanan. Hal ini disebut dengan asosiativitas.
Pada beberapa ekspresi diperlukan pengubahan urutan eksekusi operasi-operasi. Untuk memungkinkan pemrogram melakukan hal tersebut, tersedia sebuah operator tambahan yang memiliki level eksekusi paling tinggi, yaitu (). Operasi apapun yang ada dalam tanda kurung () akan dieksekusi pertama kali oleh program.
Misalnya pada ekspresi berikut ini:
iHasil = x * 2 % 2 > y && (x <> 3)
Jika inputannya adalah x = 5 dan y = 3 maka urutan pengerjaannya adalah:
F. Runtunan
Secara umum, program akan dibaca dan dieksekusi secara berurutan baris demi baris. Misalnya pada algoritma berikut ini:
Perhatikan bahwa pada saat membaca baris ke-3, program akan mengalikan 3 dan 2 (a dan b). Kemudian, saat membaca baris ke-5, program akan menjumlahkan 5 dan 2 (a dan b). Nilai a berubah karena di baris ke-4 variabel a diisi dengan 5. Ini merupakan akibat dari sifat program yang membaca dan mengeksekusi per baris. Setelah baris ke-4 dieksekusi, nilai a yang diisikan pada baris pertama sudah tidak berlaku lagi (tertumpuk dengan nilai baru yang diisikan).
Di bab-bab selanjutnya akan ditunjukkan bahwa sifat program membaca
dan mengeksekusi berurut terus per baris ini dapat diubah, dengan memberikannya perintah untuk tidak membaca sesuai urutan. Hal ini dapat dilakukan dengan struktur pemilihan, struktur pengulangan, dan lain-lain. Jika algoritma runtunan di atas dituliskan maka akan tampak sebagai berikut:
Jika Program dijalankan, maka hasil keluaran program adalah seperti
berikut :
Baca Juga :