C++ Tutorial

C++ – Operators – Arithmetic

Waktu yang dibutuhkan: 25 – 40 menit.

Selanjutnya kita akan membahas mengenai operator pada C++. Untuk mengawalinya kita akan mulai dengan mengenal operator dasar yaitu, assignment operator.

Sebenarnya pada tutorial-tutorial sebelumnya kalian telah mengenal assignment operator yaitu ‘=’. Operator ini digunakan untuk men-set nilai sebuah variable dengan value tertentu. Perhatikan potongan kode program ini,

 Yap sesimple itu lah operator assignment.


Aritmatika

Yang termasuk dalam operator aritmatika adalah +, -, *, /, %. Dengan mengenal operator aritmatika ini kita dapat mengembangkan program kita menjadi lebih menarik lagi!!!

Contohnya, kita ingin membuat sebuah program yang dapat menerima 2 buah bilangan bulat kemudian menampilkan hasil penjumlahan dan pengurangan dua bilangan tersebut. Maka kita dapat membuat programnya menjadi sebagai berikut,

Mari kita bahas beberapa bagian menarik dari kode di atas,
baris (11), pada baris ini kita melakukan operasi assign ke variable jumlah dengan nilai yang diambil dari hasil penjumlahan antara bilangan pertama dan bilangan kedua.
baris (12), baris ini kita melakukan hal yang mirip pada baris (11) namun hanya berbeda operator yang kita gunakan.
baris (15) dan (16), kedua baris ini berfungsi untuk menampilkan output ke layar console. endl merupakan singkatan dari endline yang berfungsi untuk pindah baris saat mencetak output.

Dari list di atas terdapat operator ‘%’. Operator ini merupakan operator modulo. Dimana modulo berarti sisa bagi. Untuk lebih jelasnya perhatikan contoh di bawah ini,
(1) 10 % 2 = 0
(2) 4 % 3 = 1
(3) 10 % 20 = 10
Karena operator modulo digunakan untuk mencari sisa bagi jika bilangan di sebelah kiri operator dibagi sebelah kanan operator. Operator modulo bekerja dalam bilangan bulat.

Pada contoh pertama 10 habis dibagi 2 sehingga tidak memberikan sisa. Pada contoh kedua 4 tidak habis dibagi 3, dan bersisa satu. Pada contoh ketiga 10 juga tidak habis dibagi 20 sehingga bersisa 10.

Perhatikan illustrasi berikut,

Modulo Illustration
Modulo Illustration

Pada illustrasi tersebut kita menghadapi sebuah permasalahan membagi 5 buah uang koin kepada 3 orang. Tentunya semua orang harus memperoleh jumlah yang sama (kita tidak mau mereka saling berebut xD) dan kita tidak dapat membagi-bagi uang koin tersebut.

Maka cara yang mungkin adalah,

Modulo Illustration (2)
Modulo Illustration (2)

Setiap oran

Result
Result

g masing-masing akan mendapatkan satu buah koin. Sehingga koin kita berkurang 3 koin. 2 koin sisanya akan kita simpan. Sisa pembagian inilah yang merupakan hasil dari operasi modulo.

Sebagai latihan cobalah ubah kode program di atas menggunakan operator-operator lain yang ada. Juga tambahkan operasi-operasi menjadi agar menjadi lebih kompleks!


Operator precedence

Layaknya pada hitung campur pada matematika bahwa operasi kali / bagi harus dikerjakan terlebih dahulu, pada C++ hal tersebut juga berlaku.

Prioritas Operator
1 *, / , %
2 +, –

Sebagai contoh,

Maka akan dikerjakan dahulu 4 * 3 = 12 kemudian 12 % 10 = 2 dan 5 + 2 = 7 sehingga hasil dari operasi tersebut adalah 7. Jika kita ingin operasi 5 + 4 dikerjakan dahulu maka perlu menggunakan tanda kurung. Sehingga menjadi, (5 + 4) * 3 % 10.


Type casting

Jika kalian telah mencoba mengutak-atik code di atas. Pasti kalian telah menemui sebuah permasalahan dimana ketika melakukan pembagian kalian tidak dapat memperoleh hasil berupa pecahan. Perhatikan kode ini,

berapakah isi dari variable pecahan? Tentunya 2.5 bukan, namun mari kita coba lihat output program di bawah ini,

Integer / integer
Integer / integer

Loh? apa yang terjadi bukannya 5 / 2 adalah 2.5? Ya memang benar dan ini bukan error program atau yang lainnya. Melainkan memang perilaku dari C++ dalam mengatasi operasi. Jika operasi antar bilangan bulat (integer) maka hasil dari operasi tersebut akan menghasilkan bilangan bulat juga.

Oh ya karena kita menginginkan hasil bertipe pecahan maka jangan lupa gunakan variable yang dapat menampung nilai tersebut yaitu double.

Lalu bagaimana mengatasi hal tersebut? Kita gunakan fitur C++ yaitu type cast. Maksud dari type cast adalah merubah tipe data dari variable tersebut menjadi yang kita inginkan untuk sementara waktu. Contohnya,

Operasi di atas menghasilkan nilai double karena salah satu operand bertipe double. Sehingga jika dijalankan programnya akan menghasilkan output sebagai berikut,

Result
Result

Cobalah sendiri untuk mengganti bagian code di atas agar dapat menghasilkan output seperti di atas :)


Dan berakhirlah post mengenai operator aritmatika ini. Materi untuk tutorial kali ini cukup banyak dan kompleks. Bagian terpenting adalah kalian dapat menggunakan operator aritmatika dengan baik terlebih dahulu. Jika ada masalah nantinya maka bukalah lagi post ini!

Jangan takut untuk mencoba-coba. Semakin sering melakukan kesalahan semakin luas pengetahuan anda! Berikutnya kita akan belajar mengenai  operator bitwise. Cheers!

Leave a Reply

Your email address will not be published. Required fields are marked *