Operator merupakan simbol yang biasa dilibatkan dalam pembuatan program untuk melakukan suatu operasi ataupun manipulasi. Pada operator c++ ada yang tergolong sebagai operator binary (yaitu operator yang dikenakan untuk dua buah nilai (operand), dan ada yang tergolong sebagai operator unary (operator yang dikenakan untuk satu buah nilai (operand). Contoh :
Binary >> a + b Unary >> - c
OPERATOR ARITMATIKA
Adalah operator yang digunakan untuk melakukan perhitungan matematika. Pada materi sebelumnya kita telah mengenal pengertian dari Variabel, maka sekarang coba kita asumsikan bahwa variabel a = 30 dan b = 10, maka hasil implementasi dari Operator Aritmatika adalah sebagai berikut :
Operator
|
Keterangan
|
Contoh
|
+
|
Penjumlahan
|
a + b hasilnya 40
|
-
|
Pengurangan
|
a – b hasilnya 20
|
*
|
Perkalian
|
a * b hasilnya 300
|
/
|
Pembagian
|
a / b hasilnya 3
|
%
|
Sisa Pembagian
|
a % b hasilnya 0
|
Contoh program :
Contoh berikutnya adalah penggunaan operator untuk memperoleh nilai diskirminan dari persamaan berikut : d = b2 – 4ac. Maka, untuk mengimplementasikan contoh diatas ke dalam pemrograman C++ adalah:
Contoh program :
Hasil eksekusi :
Dalam C++ operator aritmatika memiliki kedudukan prioritas tertinggi atau terendah, hal tersebut ditentukan oleh cara penulisan atau penempatannya,
1. Kedudukan prioritas secara penulisan tercantum sebagaimana dalam tabel.
2. Kedudukan prioritas tertinggi secara penempatan ditentukan oleh posisi yang PALING KIRI dari baris program.
Jadi jika operator memiliki kedudukan prioritas yang sama (secara penulisan) maka hal tersebut dapat ditentukan lagi prioritas utamanya secara penempatan.
Sebagai contoh perhatikan persamaan berikut ini :
Secara logika matematika biasa kita sudah dapat menentukan berapa nilai dari x, yaitu 10, sebab 2 + 3 dikerjakan terlebih dahulu dan hasilnya baru dikalikan dengan 2, namun perlu agan-agan sekalian ketahui bahwa hal tersebut sangatlah berbeda jika kita implementasikan kedalam pemrograman C++, lebih jelasnya perhatikan contoh program dibawah ini :
Hasil eksekusi :
Operator penurunan adalah operator yang digunakan untuk menurunkan nilai variabel sebesar 1.
Contoh :
Bisa ditulis menjadi :
atau :
Hasil eksekusi :
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *penggunaan operator aritmatika */ void main() { clrscr(); int a = 30; int b = 10; cout << "a + b = "; cout << a + b << endl; cout << "a - b = "; cout << a - b; cout << "a x b = "; out << a * b; cout << "a / b = "; cout << a / b; cout << "a % b = "; cout << a % b; getch(); }
Contoh berikutnya adalah penggunaan operator untuk memperoleh nilai diskirminan dari persamaan berikut : d = b2 – 4ac. Maka, untuk mengimplementasikan contoh diatas ke dalam pemrograman C++ adalah:
d = b * b - 4 * a * c
Contoh program :
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Menyelesaiakan persamaan diskriminan */ void main() { clrscr(); int a, b, c, d; a = 5; b = 600; c = 5; d = b * b - 4 * a * c; cout << " d = " << d << '\n'; getch(); }
Hasil eksekusi :
d = 32220
Dalam C++ operator aritmatika memiliki kedudukan prioritas tertinggi atau terendah, hal tersebut ditentukan oleh cara penulisan atau penempatannya,
1. Kedudukan prioritas secara penulisan tercantum sebagaimana dalam tabel.
Operator
|
Prioritas
|
++ -- (khusus yang berkedudukan sebagai awalan)
|
Tertinggi
|
- (Unary Minus)
| |
* / %
| |
+ -
|
Terendah
|
2. Kedudukan prioritas tertinggi secara penempatan ditentukan oleh posisi yang PALING KIRI dari baris program.
Jadi jika operator memiliki kedudukan prioritas yang sama (secara penulisan) maka hal tersebut dapat ditentukan lagi prioritas utamanya secara penempatan.
Sebagai contoh perhatikan persamaan berikut ini :
x = ( 2 + 3) * 2
Secara logika matematika biasa kita sudah dapat menentukan berapa nilai dari x, yaitu 10, sebab 2 + 3 dikerjakan terlebih dahulu dan hasilnya baru dikalikan dengan 2, namun perlu agan-agan sekalian ketahui bahwa hal tersebut sangatlah berbeda jika kita implementasikan kedalam pemrograman C++, lebih jelasnya perhatikan contoh program dibawah ini :
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan kurung() untuk mengatur prioritas *Pembuktian prioritas suatu operator */ void main() { clrscr() int x ; x = 2 + 3 * 2 ; cout << " x = " << x << '\n'; x = (2 + 3) * 2 ; cout << " x = " << x << '\n'; getch(); }
Hasil eksekusi :
8 12
OPERATOR PENAIKAN DAN PENURUNAN
Operator penaikan adalah operator yang digunakan untuk menaikan nilai variabel sebesar 1,Operator penurunan adalah operator yang digunakan untuk menurunkan nilai variabel sebesar 1.
Contoh :
x = x + 1 ; y = y - 1 ;
Bisa ditulis menjadi :
++ x ; -- y ;
x ++ ; y -- ;
MENENTUKAN PRIORITAS OPERATOR PENAIKAN DAN PENURUNAN
Sekarang kita akan mencoba untuk menentukan prioritas dari operator penaikan dan penurunan, lalu bagaimanakah efek yang ditimbulkan dari hasil percobaan ini? selengkapnya silakan perhatikan contoh program di bawah ini :#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan operator penaikan di belakang variabel */ void main() { int r = 10; int s; s = 10 + r++ ; cout << "r = " << r << '\n' ; cout << "s = " << s << '\n' ; getch(); }
Hasil eksekusi :
r = 11 s = 20
Penjelasan :
Pada contoh diatas s diisi dengan penjumlahan nilai 10 dan r. Dengan demikian s akan bernilai 20. setelah s diisi dengan 20, nilai r baru dinaikan karena operator ++ ditulis dibelakang r. Disebut post-increment yang artinya dinaikkan dibelakang setelah penjumlahan antara r dan 10 dilaksanakan. Contoh lagi:
Hasil eksekusi :
Contoh program :
Bentuk umum:
Jenis-jenis operator relasi bisa dilihat dalam tabel berikut:
Contoh program :
Contoh Program:
Hasil eksekusi :
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan operator penaikan di depan variabel */ void main() { int r = 10; int s; s = 10 + ++r ; cout << "r = " << r << '\n' ; cout << "s = " << s << '\n' ; getch(); }
Hasil eksekusi :
r = 11 s = 20
Penjelasan :
Pada contoh ini, nilai r mula-mula dinaikan terlebih dahulu karena operator ++ ditempatkan didepan r. Disebut pre-increment kemudian nilainnya dijumlahkan dengan 10 dan diberikan ke s. Dengan demikian s bernilai 21 dan r sama dengan 11.
OPERATOR PENUGASAN
Operator Penugasan adalah operator yang digunakan untuk memberikan nilai ke dalam variabel tertentu. Asumsikan variabel a bernilai 50 dan variabel b bernilai 30,lalu perhatikan tabel berikut:
Operator
|
Keterangan
|
Contoh
|
=
|
Memberikan nilai dari operand sisi kanan untuk sisi kiri
|
c = a + b
hasilnya c diberi nilai 80
c = a = b
Hasilnya c,a,b bernilai 30
|
+=
|
Menambahkan operand kiri dengan operand kanan dan menugaskan hasilnya untuk operand kiri
|
c += a
sama dengan
c = c + a
|
-=
|
Mengurangi operand kanan dari operand kiri dan menugaskan hasilnya untuk operand kiri
|
c -= a
sama dengan
c = c - a
|
*=
|
Mengalikan operand kanan dengan operand kiri dan menugaskan hasilnya untuk operand kiri
|
c *= a
sama dengan
c = c * a
|
/=
|
Membagi operand kiri dengan operand kanan dan menugaskan hasil untuk operand kiri
|
c /= a
sama dengan
c = c / a
|
%=
|
Menghitung sisa pembagian menggunakan dua operand dan memberikan hasilnya ke operand kiri
|
c %= a
sama dengan
c = c % a
|
Contoh program :
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan operator penugasan */ void main() { int a = 50; int b = 30; int c = a + b; cout << "Nilai c adalah : " << c; c = a = b; cout << "Nilai c sekarang : " << c; cout << "Nilai a sekarang : " << a; c += a; cout << "Nilai c sekarang : " << c; c *= a; cout << "Nilai c sekarang : " << c; c -= a; cout << "Nilai c sekarang : " << c; c /= a; cout << "Nilai c sekarang : " << c; c %= a; cout << "Nilai c sekarang : " << c; getch(); }
OPERATOR KONDISI
Operator Kondisi merupakan penyederhanaan dari bentuk if..else yang setiap blok dari if dan else hanya terdiri dari satu statement/perintah.
Bentuk umum:
(ekspresi) ? (jika benar) : (jika salah);
Contoh Program:
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan operator kondisi untuk memperoleh *bilangan terkecil diantara dua buah bilangan */ void main() { int bil1, bil2, minim; bil1 = 53; bil2 = 6; minim = (bil1 < bil2) ? bil1 : bil2; cout << " Bilangan terkecil = " << minim << '\n'; getch(); }
Hasil Eksekusi:
Bilangan terkecil = 6
OPERATOR RELASI / PERBANDINGAN
Operator Relasi digunakan untuk menguji hubungan antara nilai dan atau variabel. Operator ini digunakan dalam suatu statement bersyarat yang selalu menghasilkan nilai true atau false.
Jenis-jenis operator relasi bisa dilihat dalam tabel berikut:
Operator
|
Keterangan
|
==
|
Sama dengan (bukan penugasan)
|
!=
|
Tidak sama dengan
|
>
|
Lebih dari
|
<
|
Kurang dari
|
>=
|
Lebih dari atau sama dengan
|
<=
|
Kurang dari atau sama dengan
|
Contoh program :
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan operator relasi */ void main() { int nilai; nilai = 3 > 2 ; // hasil ungkapan : benar cout << "Nilai = " << nilai << endl; nilai = 2 > 3 ; // hasil ungkapan : salah cout << "Nilai = " << nilai << endl; getch(); }
Hasil eksekusi:
Nilai = 1 Nilai = 0
OPERATOR LOGIKA
Operator Logika digunakan untuk membandingkan dua nilai variabel atau lebih. Hasil dari operasi ini adalah nilai boolean true atau false. Asumsikan variabel a bernilai true, b bernilai false dan c bernilai true, lalu perhatikan tabel berikut:
Operator
|
Keterangan
|
Contoh
|
&&
|
Jika semua operand bernilai benar (TRUE) maka kondisi bernilai benar.
|
a && b hasilnya false
a && c hasilnya true
|
||
|
Jika salah satu dari operand bernilai benar (TRUE) maka kondisi bernilai benar.
|
a || b hasilnya true
a || c hasilnya true
|
!
|
Digunakan untuk membalik kondisi. Jika kondisi benar (TRUE) maka akan berubah menjadi salah (FALSE), begitu pula sebaliknya
|
!a hasilnya false
!b hasilnya true
!( b && a ) hasilnya true
|
Contoh Program:
#include <iostream.h> #include <conio.h> /** *gatewan.com *Wawan Beneran *Penggunaan operator logika */ void main() { bool a = true; bool b = false; bool c = true; cout<< "(a && b) : " << (a && b); cout<< "\n (a && c) : " << (a && c); cout<< "\n (a && b && c) : " << (a && b && c); cout<< "\n (a || b) : " << (a || b); cout<< "\n (a || c) : " << (a || c); cout<< "\n (a || b || c) : " << (a || b || c); cout<< "\n !a : " << !a; cout<< "\n !b : " << !b; cout<< "\n !(b && a) : " << !(b && a); getch(); }
Hasil eksekusi :
(a && b) : 0 (a && c) : 1 (a && b && c) : 0 (a || b) : 1 (a || c) : 1 (a || b || c) : 1 !a : 0 !b : 1 !(b && a) : 1
Tidak ada komentar:
Posting Komentar