Didalam bahasa pemrograman, operator digunakan untuk memanipulasi data.
Misal, jika kita ingin menjumlahkan dua buah angka, mencari selisih antar dua angka, ataupun membandingkan nilai dari suatu data. Maka, disinilah peran penting dari sebuah operator.
Terdapat dua jenis operator didalam bahasa C, yaitu operator binary dan operator unary.
Operator binary merupakan operator yang digunakan untuk memanipulasi dua buah data.
Contoh: a + b
a
dan b
disebut sebagai operand atau data yang akan dioperasikan.
sedangkan +
, merupakan sebuah operator atau simbol yang digunakan sebagai pengoperasi.
Sedangkan operator unary merupakan operator yang hanya digunakan untuk satu buah data saja.
Contoh: -4
, -x
-
(minus) pada contoh diatas digunakan sebagai operator unary, yang berarti bahwa bilangan tersebut merupakan bilangan -4
(negatif empat).
Dalam operator unary, hanya terdapat dua operator saja, yaitu: +
dan -
.
Berdasarkan kegunaanya, operator dalam pemrograman dibagi menjadi beberapa macam, yaitu:
- Operator Aritmatika
- Operator Penaikan dan Penurunan
- Operator Penugasan
- Operator Relational
- Operator Logika
- Operator Kombinasi
Mari kita bahas satu-persatu..
1. Operator Aritmatika
Operator aritmatika merupakan operator dasar yang sering kita gunakan sehari-hari.
Berikut merupakan macam-macam operator aritmatika..
Operator | Keterangan |
---|---|
* |
Perkalian (multiplication) |
/ |
Pembagian (division) |
% |
Sisa pembagian (modulus) |
+ |
Penjumlahan (addition) |
- |
Pengurangan (subtraction) |
Berikut merupakan penggunaan operator didalam program.
#include <stdio.h>
int main(){ int a = 3; int b = 2; printf("a * b = %d\n", a*b); printf("a / b = %d\n", a/b); printf("a % b = %d\n", a%b); printf("a + b = %d\n", a+b); printf("a - b = %d\n", a-b); return 0; }
Ada satu operator yang mungkin masih asing untuk kita ketahui, yaitu operator modulus.
Operator modulus atau sisa bagi merupakan operator yang digunakan untuk mencari sisa pembagian dari suatu nilai yang dioperasikan.
Perhatikan program berikut
#include <stdio.h>
int main(){ int a = 14; int b = 3; int c = a % b; printf("a % b = %d\n", c); return 0; }
Hasil dari 14 % 3 = 2;
, Bagaimana caranya..??
Bilangan bulat berapa jika dikalikan 3
hasilnya mendekati 14
??
Jawabannya pasti 4
.
3 x 4 = 12
, dua belas merupakan hasil yang paling mendekati dengan 14
.
Lalu.. untuk menuju ke empat belas sisa berapa angka lagi, yaitu sisa 2
.
Sisanya inilah yang merupakan hasil dari operasi modulus.
Contoh lagi, 10 % 5 = 0
Untuk menuju nilai sepuluh, angka lima kita kalikan dengan dua, 5 x 2 = 10
Adakah sisa angka lagi untuk mencapai 10
..?? Tidak ada alias 0
.
2. Operator Penaikan dan Penurunan
++
Operator Penaikan (increment)
--
Operator Penurunan (decrement)
Operator penaikan ini digunakan untuk menaikkan nilai suatu data sebesar satu.
Sebaliknya, operator penurunan digunakan untuk menurunkan nilai suatu data sebesar satu.
Perhatikan program berikut..
#include <stdio.h>
int main(){ int x = 0; x = x + 1; // Increment nilai x printf("Nilai x = %d\n", x); x = x + 1; // Kita Increment lagi printf("Nilai x = %d\n", x); return 0; }
Mula-mula x = 0;
, lalu kita increment nilai x
akan naik satu, x = 1
.
x = 1
, kita increment-kan lagi naik menjadi x = 2
, begitu juga seterusnya.
x++
sama artinya dengan x = x + 1;
3. Operator Penugasan
Operator penugasan (assignment operator) merupakan operator yang digunakan untuk meng-assign suatu nilai atau ekspresi untuk disimpan didalam variabel.
Contoh: x = 10;
Sepuluh merupakan nilai yang akan disimpan kedalam variabel x
Contoh lagi: x = 10 + y;
10
dan y
diatas disebut sebagai sebuah ekspresi/ nilai yang didalamnya memiliki nilai.
Contoh lagi: a = b = c = 10;
Variabel a
b
dan c
memiliki nilai yang sama yaitu 10
.
Operator penugasan =
didalam pemrograman biasa disebut sebagai equal sign atau tanda sama dengan.
4. Operator Relational
Operator relational atau perbandingan merupakan operator yang digunakan untuk membandingkan nilai dari suatu data.
Berikut merupakan operator perbandingan dalam bahasa C.
Operator | Keterangan |
---|---|
> |
lebih dari (more than) |
< |
kurang dari (less than) |
>= |
lebih dari sama dengan (more than equal) |
<= |
kurang dari sama dengan (less than equal) |
== |
sama dengan (equal) |
!= |
tidak sama dengan (not equal) |
Syarat dalam membandingkan yaitu, minimal ada dua buah data yang akan dibandingkan
#include <stdio.h>
int main(){ int a = 2; int b = 3; printf("a = %d\n", a); printf("b = %d\n\n", b); printf("a > b = %d\n", a>b); printf("a < b = %d\n", a<b); printf("a >= b = %d\n", a>=b); printf("a <= b = %d\n", a<=b); printf("a == b = %d\n", a==b); printf("a != b = %d\n", a!=b); return 0; }
Didalam pemrograman, jika kita membandingkan suatu data, program hanya akan mencetak hasilnya true
= 1
atau false
= 0
.
5. Operator Logika
Operator logika biasanya sering dipakai untuk melihat kondisi dari sebuah ekspresi.
Hasil dari operasi logika ini hanya akan menghsilakan nilai true
atau false
.
Simbol | Nama |
---|---|
&& |
AND |
|| |
OR |
! |
NOT |
AND
Operator yang akan memberikan nilaitrue
jika semua ekspresi yang diberikan terpenuhi.OR
Operator yang akan memberikan nilaitrue
jika salah satu dari semua ekspresi yang diberikan terpenuhi.NOT
merupakan operator negasi/kebalikan, misal:!siang = sore
dibaca "tidak siang = sore" maka akan menghasilkan nilaitrue
.Contoh lagi,
!5 = 5
, maka akan menghasilkan nilaifalse
6. Operator Kombinasi
Operator kombinasi atau operator pemendekan ini digunakan untuk memendekkan atau menyingkat penulisan dalam sebuah operasi. Contoh:
x = x + 1;
dapat kita tulis x += 1
Mungkin kita masih sedikit bingung memahami bagaimana bisa x = x + 1
Bukankah dalam matematika hal ini menyalahi aturan.. ??
Disinilah bedanya antara matematika dengan pemrograman.. 😁
x = x + 1;
dapat dibaca "x
yang baru sama dengan x
yang lama ditambah 1
".
Coba perhatikan program berikut..
#include <stdio.h>
int main(){ int x = 0; x = x + 1; // Increment nilai x printf("Nilai x = %d\n", x); return 0; }
x = 0;
, 0
ini akan menjadi nilai x
yang lama.
Nilai x
yang baru yaitu 0 + 1 = 1.
Jadi, didapatkan nilai x
yang baru sama dengan 1
.
Perhitungan tersebut akan berlaku seterusnya ketika terjadi increment nilai, seperti yang telah kita pelajari sebelumnya pada operator penaikan dan penurunan
Berikut merupakan macam-macam operator kombinasi dalam bahasa C.
x += 1; |
x = x + 1; |
x -= 1; |
x = x - 1; |
x *= 1; |
x = x * 1; |
x /= 1; |
x = x / 1; |
x %= 1; |
x = x % 1; |
x <<= 1; |
x = x << 1; |
x >>= 1; |
x = x >> 1; |
x &= 1; |
x = x & 1; |
x |= 1; |
x = x | 1; |
x ^= 1; |
x = x ^ 1; |
Post a Comment
Post a Comment