Setelah kita memahami mengenai Variabel dan Konstanta pada pembahasan sebelumnya, sekarang kita dapat memulai beroperasi dengannya.
Operator yang disediakan berupa keyword atau karakter khusus. Operator-operator ini cukup penting untuk diketahui, karena merupakan salah satu dasar bahasa C++. Tetapi tidak diharuskan untuk menghafalkan semuanya, gunakanlaman page ini sebagai rujukan saja, siapa tahu sobat membutuhkannya di kemudian hari.
Assignation ( = )
Operator Assignation digunakan untuk memberikan nilai ke suatu variabel. contohnya :
Pernyataan di atas berarti kita memberikan nilai integer 5 ke variabel a. Sisi kiri operator disebut lvalue (left value) dan sisi kanan disebut rvalue (right value). lvalue harus selalu berupa variabel dan rvalue atau sisi kanan dapat berupa konstanta, variabel, hasil dari suatu operasi atau kombinasi dari semuanya.
Aturan yang paling penting pada assigning (operasi sama dengan) adalah aturan kanan-ke-kiri: Operasi assignment selalu terjadi dari kanan ke kiri, dan tidak pernah sebaliknya.
Operator Increase (++) dan Decrease (--) dapat digunakan sebagai prefix atau suffix. Dengan kata lain dapat dituliskan sebelum identifier variabel (++a) atau sesudahnya (a++). Operator increase yang digunakan sebagai prefix (++a), begini perbedaannya:
Pada contoh 1, B ditambahkan sebelum nilainya diberikan ke A. Sedangkan contoh 2, Nilai B diberikan terlebih dahulu ke A dan B ditambahkan kemudian.
Relational operators ( ==, !=, >, <, >=, <= )
Untuk mengevaluasi antara 2 ekspresi, dapat digunakan operator Relasional di atas. Hasil dari operator ini adalah nilai Boolean yaitu hanya berupa True atau False, atau dapat juga dalam nilai int, 0 untuk mereprensentasikan "false" dan 1 untuk merepresentasikan "true".
Contoh :
(7 == 5) // evaluates to false atau hasil perbandingan salah.
(5 > 4) // evaluates to true atau hasil perbandingan benar.
(3 != 2) // evaluates to true atau hasil perbandingan benar.
(6 >= 6) // evaluates to true atau hasil perbandingan benar.
(5 < 5) // evaluates to false atau hasil perbandingan salah.
Selain menggunakan konstanta numerik seperti di atas, kita dapat menggunakan ekspresi yang valid, termasuk variabel. Misalkan a = 2, b = 3 dan c = 6 :
(a == 5) // "evaluates to false" karena a tidak samadengan 5.
(a*b >= c) // "evaluates to true" karena (2*3 >= 6) adalah benar.
(b+4 > a*c) // "evaluates to false" karena (3+4 > 2*6) adalah salah.
((b=2) == a) // "evaluates to true".
Hati-hati! Operator = (satu tanda sama) adalah tidak sama dengan operator == (dua tanda yang sama), yang pertama adalah operator penugasan (memberikan nilai pada haknya untuk variabel di sebelah kiri) dan yang lainnya (= =) adalah operator kesetaraan yang membandingkan apakah kedua ekspresi dalam dua sisi itu adalah sama satu sama lain.
Operator yang disediakan berupa keyword atau karakter khusus. Operator-operator ini cukup penting untuk diketahui, karena merupakan salah satu dasar bahasa C++. Tetapi tidak diharuskan untuk menghafalkan semuanya, gunakanlaman page ini sebagai rujukan saja, siapa tahu sobat membutuhkannya di kemudian hari.
Assignation ( = )
Operator Assignation digunakan untuk memberikan nilai ke suatu variabel. contohnya :
a=5
Pernyataan di atas berarti kita memberikan nilai integer 5 ke variabel a. Sisi kiri operator disebut lvalue (left value) dan sisi kanan disebut rvalue (right value). lvalue harus selalu berupa variabel dan rvalue atau sisi kanan dapat berupa konstanta, variabel, hasil dari suatu operasi atau kombinasi dari semuanya.
Aturan yang paling penting pada assigning (operasi sama dengan) adalah aturan kanan-ke-kiri: Operasi assignment selalu terjadi dari kanan ke kiri, dan tidak pernah sebaliknya.
a = b
Pernyataan ini memberikan arti variabel a (lvalue) di beri harga b (rvalue).
Contoh penerapannya begini :
a = 10; //berarti a bernilai 10
b = 4; //berarti a bernilai 10 dan b bernilai 4
a = b; //berarti a bernilai 4 dan b bernilai 4. Ingat aturannya, Kanan ke Kiri.
b = 7; //berarti a bernilai 4 dan b bernilai 7.
Bagaimana, sudah paham belum? jangan bilang tidak paham ya sobat. hehehe
Operator Aritmatika
Operator aritmatika yang dapat digunakan di C++ ada 5, yaitu :
- + Penjumlahan
- - Pengurangan
- * Perkalian
- / Pembagian
- % Modulo atau modulus
Wah pasti tidak perlu di jelaskan satu persatu sobat juga pasti sudah paham. Mungkin yang sedikit bingung adalah operator ( % ) atau modulo. Modulo adalah operasi yang memberikan sisa dari pembagian dua nilai. Misalnya begini:
a = 11 % 3
Variabel a akan bernilai 2. Nilai 2 didapat dari sisa pembagian 11 dibagi 3. Coba saja di cek kalau tidak percaya. Tetapi jangan menggunakan kalkulator, karena hasilnya akan bilangan desimal. Capek deh.
Increase ( ++ ) and Decrease ( -- )
Di C++ kita dapat memperpendek operasi :
Increase (++)
a++;
a+=1;
a=a+1;
Decrease (--)
a--;
a-=1;
a=a-1;
Masih bingung? begini sobat. Misalnya a=3; a++; maka nilai a yang baru adalah 4. Nah paham kan?
Operator Increase (++) dan Decrease (--) dapat digunakan sebagai prefix atau suffix. Dengan kata lain dapat dituliskan sebelum identifier variabel (++a) atau sesudahnya (a++). Operator increase yang digunakan sebagai prefix (++a), begini perbedaannya:
Contoh 1 (Prefix) | Contoh 2 (Surfix) |
---|---|
B = 3; A = + + B; // A berisi 4, B berisi 4 | B = 3; A = B + +; // A berisi 3, B berisi 4 |
Pada contoh 1, B ditambahkan sebelum nilainya diberikan ke A. Sedangkan contoh 2, Nilai B diberikan terlebih dahulu ke A dan B ditambahkan kemudian.
Relational operators ( ==, !=, >, <, >=, <= )
Untuk mengevaluasi antara 2 ekspresi, dapat digunakan operator Relasional di atas. Hasil dari operator ini adalah nilai Boolean yaitu hanya berupa True atau False, atau dapat juga dalam nilai int, 0 untuk mereprensentasikan "false" dan 1 untuk merepresentasikan "true".
== | Sama dengan |
! = | Tidak sama dengan |
> | Lebih besar dari |
< | Kurang dari |
> = | Lebih besar dari atau sama dengan |
<= | Kurang dari atau sama dengan |
Contoh :
(7 == 5) // evaluates to false atau hasil perbandingan salah.
(5 > 4) // evaluates to true atau hasil perbandingan benar.
(3 != 2) // evaluates to true atau hasil perbandingan benar.
(6 >= 6) // evaluates to true atau hasil perbandingan benar.
(5 < 5) // evaluates to false atau hasil perbandingan salah.
Selain menggunakan konstanta numerik seperti di atas, kita dapat menggunakan ekspresi yang valid, termasuk variabel. Misalkan a = 2, b = 3 dan c = 6 :
(a == 5) // "evaluates to false" karena a tidak samadengan 5.
(a*b >= c) // "evaluates to true" karena (2*3 >= 6) adalah benar.
(b+4 > a*c) // "evaluates to false" karena (3+4 > 2*6) adalah salah.
((b=2) == a) // "evaluates to true".
Hati-hati! Operator = (satu tanda sama) adalah tidak sama dengan operator == (dua tanda yang sama), yang pertama adalah operator penugasan (memberikan nilai pada haknya untuk variabel di sebelah kiri) dan yang lainnya (= =) adalah operator kesetaraan yang membandingkan apakah kedua ekspresi dalam dua sisi itu adalah sama satu sama lain.