Bagian ini mempelajari Operator dan Ungkapan (ekspresi) yang biasa digunakan di dalam pemrograman berkaitan dengan operasi terhadap variabel.
EKSPRESI
Ekspresi adalah sesuatu yang dapat menghasilkan nilai Ekspresi terdiri dari Operand dan Operator Operand dapat berupa Pengenal (Identifier) dan konstanta atau kombinasi dari
keduanya. Pengenal (identifier) adalah suatu nama yang biasa dipakai dalam pemrograman
untuk menyatakan:- Variabel- Konstanta Bernama
Operator dibagi 2 berdasarkan operand yaitu– Unary : satu operand– Binary : dua operand– Ternary : tiga operand Contoh Ekpresi : 6 + 3 Angka 6 dan angka 3 adalah Operand sedangkan Simbol tambah adalah operator Contoh Unary : - 4 Simbol minus adalah Operator dan Angka 4 adalah Operand Contoh Binary : 7 * 2 Angka 7 dan 2 adalah Operand dan Simbol asteris adalah operatorContoh Ternary : (a>b)?a:b
EKSPRESI
Ekspresi adalah sesuatu yang dapat menghasilkan nilai Ekspresi terdiri dari Operand dan Operator Operand dapat berupa Pengenal (Identifier) dan konstanta atau kombinasi
dari keduanya. Pengenal (identifier) adalah suatu nama yang biasa dipakai dalam
pemrograman untuk menyatakan Operator dibagi 2 berdasarkan operand yaitu
– Unary : satu operand– Binary : dua operand– Ternary : tiga operand Contoh Ekpresi : 6 + 3
Angka 6 dan angka 3 adalah Operand sedangkan Simbol tambah adalah operator
Contoh Unary : - 4 Simbol minus adalah Operator dan Angka 4 adalah Operand Contoh Binary : 7 * 2
Angka 7 dan 2 adalah Operand dan Simbol asteris adalah operatorContoh Ternary : (a>b)?a:b
OPERATOR
Operasi apa saja yang dapat dikenakan pada tipe data, variabel dan konstanta tidak lepas dari operator.
Operator merupakan simbol atau kata yang dapat digunakan dalam program untuk melakukan suatu operasi atau manipulasi, seperti menjumlahkan dua buah nilai, memberikan nilai ke suatu variabel, membandingkan dua buah nilai dan lain-lain.
Sebagian operator C++ tergolong sebagai operator binary, yaitu operator yang dikenakan terhadap dua buah nilai (operand).
OPERATOR
Operator Pengerjaan (assignment operator)
Operator Aritmatika Operator Peningkatan dan Penurunan Operator Manipulasi Bit (Bitwise) Operator Hubungan Operator Logika Operator Alamat Operator Koma
OPERATOR PENGERJAAN
Menggunakan tanda sama dengan (=). Tanda sama dengan menunjukkan
pemberian atau penugasan nilai di kanan operator kepada variabel di kiri operator tersebut.
Contoh: n = 10, artinya nilai 10 diberikan kepada variabel n. c = b = a (hasilnya b dan c akan bernilai a) a = b = c (hasilnya a dan b akan bernilai c)
/* ---------------------------- Nama Program: ADP_Soal13.cpp Contoh Penggunaan Operator Pngerjaan ---------------------------- */#include <stdio.h>#include <stdlib.h>
main(){
int a,b,c; a=10; c=b=a; printf("Contoh Program Penggunaan Operator Pengerjaan\n"); printf("_____________________________________________\n"); printf("\n"); printf("a=%d\n",a); printf("b=%d\n",b); printf("c=%d\n",c);
system("pause");}
OPERATOR ARITMATIKA
Operator aritmatika hanya dapat dikenakan pada operand bertipe bilangan, yaitu bilangan bulat atau bilangan pecahan (real).
OPERATOR ARITMATIKAOperator
Keterangan Contoh
* Perkalian 2 * 3
/ Pembagian 2 / 3
% Modulus atau sisa pembagian
3 % 2
+ Penjumlahan 2 + 3
- Pengurangan 2 - 3Operator Binary
Operator Keterangan Contoh
+ Tanda plus +4
- Tanda minus -5
++ Prefix: preincrement; Postfix: postincrement
++n, n++
-- Prefix: predecrement; postfix: postdecrement
--n, n--Operator Unary
/* ---------------------------- Nama Program: ADP_Soal14.cpp Contoh Penggunaan Operator Aritmatika ---------------------------- */
#include <stdio.h>#include <stdlib.h>
main(){ float luas, pi, jari; pi = 3.141593; jari = 12.0; luas = pi*jari*jari; printf("Contoh Program Penggunaan Operator Arimatika\n"); printf("_____________________________________________\n"); printf("\n"); printf("Jari-jari = %f\n",jari); printf("luas = %f\n",luas); printf("\n");
system("pause");}
/* ----------------------------------------- Nama Program: ADP_Soal14a.cpp Contoh Penggunaan Operator Aritmatika Hasil Bagi ------------------------------------------ */#include <stdio.h>#include <stdlib.h>
main(){ int a, b, c; printf("Contoh Program Penggunaan Operator Arimatika"); printf(" Hasil Bagi (Modulus)\n"); printf("_____________________________________________"); printf("____________________"); printf("\n"); a = 4 % 2; b = 7 % 2; c = 8 % 3; printf("Jika 4 modulus 2 hasil baginya = %d\n", a); printf("Jika 7 modulus 2 hasil baginya = %d\n", b); printf("Jika 8 modulus 3 hasil baginya = %d\n", c); printf("\n"); system("pause");}
OPERATOR ARITMATIKA
Tertinggi
++ --
- (unary minus)
* / %
Terendah
+ -
Hirarki pada operator aritmatika
/* ----------------------------------------- Nama Program: ADP_Soal14b.cpp Prioritas Operator Aritmatika ------------------------------------------- */#include <stdio.h>#include <stdlib.h>
main(){ int a; printf("Contoh Program Merubah Prioritas Operator Aritmatika"); printf(“ dengan menggunakan tanda kurung\n”); printf("________________________________________________"); printf("_______________________________"); printf("\n"); printf("\n"); a = 2 + 3 * 2; printf("a = 2 + 3 x 2 hasilnya adalah : \n"); printf("a = %d\n",a); printf("\n"); a = (2 + 3) * 2; printf("a = (2 + 3) x 2 hasilnya adalah : \n"); printf("a = %d\n",a); printf("\n"); system("pause");}
OPERATOR PENINGKATAN DAN PENURUNAN
C++ mempunyai operator terkenal yaitu operator peningkatan (increment operator) yang menggunakan tanda ++ dan operator penurunan (decrement operator) yang menggunakan tanda --.
Operator peningkatan digunakan untuk menambahkan nilai 1 pada nilai sebelumnya dan operator penurunan digunakan untuk mengurangi nilai 1 pada nilai sebelumnya.
/* ----------------------------------------- Nama Program: ADP_Soal15.cpp Contoh Penggunaan Operator Peningkatan di belakang variabel ----------------------------------------- */#include <stdio.h>#include <stdlib.h>
main(){ int a = 10, b;
printf("Contoh Program Penggunaan Operator Peningkatan"); printf(" di belakang variabel\n"); printf("_____________________________________________"); printf("____________________"); printf("\n"); printf("\n"); b = 10 + a++; printf(“b = 10 + a++ hasilnya adalah : \n"); printf("a = %d\n",a); printf("b = %d\n",b); printf("\n"); system("pause");}
/* ----------------------------------------- Nama Program: ADP_Soal15b.cpp Contoh Penggunaan Operator Peningkatan di depan variabel ----------------------------------------- */#include <stdio.h>#include <stdlib.h>
main(){ int a = 10, b;
printf("Contoh Program Penggunaan Operator Peningkatan"); printf(" di depan variabel\n"); printf("_____________________________________________"); printf("__________________"); printf("\n"); printf("\n"); b = 10 + ++a; printf("b = 10 + a++ hasilnya adalah : \n"); printf("a = %d\n",a); printf("b = %d\n",b); printf("\n"); system("pause");}
OPERATOR BITWISE (MANIPULASI BIT)
Operator
Keterangan
<< Shift left (pergeseran ke kiri)
>> Shift right (pergeseran ke kanan)
& Operasi bit AND
| Operasi bit OR
^ Operasi bit XOR
~ Operasi bit NOTOperator Bitwise
Tertinggi
~
>> <<
&
^
Terendah
|
/* ---------------------------------- Nama Program: ADP_Soal_bitwise.cpp Contoh Penggunaan Operator Bitwise ---------------------------------- */
#include <stdio.h>#include <stdlib.h>
main(){ int x = 93;
printf("Contoh Program Penggunaan Operator Bitwise"); printf(" geser kiri 1 bit\n"); printf("_____________________________________________"); printf("__________________"); printf("\n"); printf("\n"); printf("Nilai x semula adalah : %d\n",x); x = x << 1; // penggeseran ke kiri 1 bit printf("Nilai x setelah digeser 1 bit ke kiri adalah : %d\n",x); printf("\n");
system("pause");}
Bit Operand 1 Bit Operand 2 Hasil
0 0 0
0 1 1
1 0 1
1 1 1
Operasi dengan Operator Bitwise “atau/OR”
Operand 1 | operand 2
Bit Operand 1 Bit Operand 2 Hasil
0 0 0
0 1 0
1 0 0
1 1 1
Operasi dengan Operator Bitwise “dan/AND”
Operand 1 & operand 2
Bit Operand 1 Bit Operand 2 Hasil
0 0 0
0 1 1
1 0 1
1 1 0
Operasi dengan Operator Bitwise “eXclusive OR”
Operand 1 ^ operand 2
/* ------------------------------------------------------------- Nama Program: ADP_Soal_bitwise2.cpp Contoh Penggunaan Operator Bitwise "atau/OR", "dan/AND" serta "eXclusive OR/XOR" ------------------------------------------------------------- */
#include <stdio.h>#include <stdlib.h>
main(){ int nilai = 81, hasil = 99, a, b, c;
printf("Contoh Program Penggunaan Operator Bitwise"); printf(" \"atau/OR\", \"dan/AND\"\n"); printf("serta \"eXclusive OR\""); printf("\n"); printf("\n");
a = nilai | hasil; //operasi atau b = nilai & hasil; //operasi dan c = nilai ^ hasil; //operasi XOR
printf("Hasilnya adalah :\n"); printf("a = %d\n", a); printf("b = %d\n", b); printf("c = %d\n", c); printf("\n");
system("pause");}
/* ------------------------------------------------ Nama Program: ADP_Soal_bitwise3.cpp Contoh Penggunaan Operator Bitwise komplemen/Not ------------------------------------------------ */
#include <stdio.h>#include <stdlib.h>
main(){ unsigned char nilai = 81;
printf("Contoh Program Penggunaan Operator Bitwise komplemen/NOT"); printf("\n"); printf("\n");
nilai = ~ nilai; //komplemen dari nilai
printf("Komplemen dari nilai adalah : %d\n",nilai); printf("\n");
system("pause");}
OPERATOR HUBUNGAN
Digunakan untuk membandingkan dua buah nilai dan akan dihasilkan perbandingannya, yaitu betul (bernilai 1) atau salah (bernilai 0)
Operator ini banyak digunakan pada penyeleksian suatu kondisi di statemen IF
OPERATOR HUBUNGAN
Operator Keterangan
> Lebih besar
>= Lebih besar sama dengan
< Lebih kecil
<= Lebih kecil sama dengan
== Sama dengan
!= Tidak sama dengan
OPERATOR LOGIKA
Disamping operator hubungan, C++ juga menyediakan tiga buah operator logika yang biasanya berpasangan dengan operator hubungan
Operator Keterangan
&& Operator Logika AND
|| Operator Logika OR
! Operator Logika NOT
/* ------------------------------------- Nama Program: ADP_Soal16.cpp Contoh Penggunaan Operator Logika AND ------------------------------------- */
#include <stdio.h>#include <stdlib.h>
main(){
int nilai, tugas;
printf("Contoh Program Penggunaan Operator Logika AND\n"); printf("_____________________________________________\n"); printf("\n");
printf("Masukkan Nilai: ");scanf("%d",&nilai); printf("Masukkan Nilai Tugas: ");scanf("%d",&tugas);
if(nilai>70 && tugas>=75) printf("Lulus\n");
else printf("Tidak Lulus\n");
printf("_______________________________________________"); printf("\n"); printf("\n");
system("pause");}
OPERATOR KOMA/* ------------------------------- Nama Program: ADP_Soal17.cpp Contoh Penggunaan Operator Koma ------------------------------- */
#include <stdio.h>#include <stdlib.h>
main(){
char kar1, kar2; (kar1='A', kar2='B');
printf("Contoh Program Penggunaan Operator Koma\n"); printf("_______________________________________\n"); printf("\n");
printf("%c\n",kar1); printf("%c\n",kar2);
system("pause");}
OPERATOR GABUNGAN
Operator
Contoh
Keterangan
+= a += b Kependekan dari a = a+b
-= a -= b Kependekan dari a = a-b
*= a *= b Kependekan dari a = a * b
/= Kependekan dari a = a / b
%= Kependekan dari a = a % b
<<= Kependekan dari a = a << b
>>= Kependekan dari a = a >> b
&= Kependekan dari a = a &b
|= Kependekan dari a = a | b
^= Kependekan dari a = a ^ b
/* ----------------------------------- Nama Program: ADP_Soal_gabungan.cpp Contoh Penggunaan Operator Gabungan ----------------------------------- */#include <stdio.h>#include <stdlib.h>
main(){ int x = 2; printf("Contoh Program Penggunaan Operator Gabungan"); printf("\n"); printf("\n"); printf("x = : %d\n",x); printf("\n"); x += 3; printf("Setelah x = x + 3, x = : %d\n",x); printf("\n"); x *= 2; printf("Setelah x = x * 2, x = : %d\n",x); printf("\n"); system("pause");}
/* ----------------------------------- Nama Program: ADP_Soal_gabungan.cpp Contoh Penggunaan Operator Gabungan ----------------------------------- */#include <stdio.h>#include <stdlib.h>main(){ int x = 2; x += 3; x *= 2; printf("Contoh Program Penggunaan Operator Bitwise komplemen/NOT"); printf("\n"); printf("\n"); printf("x = : %d\n",x); printf("\n"); printf("Setelah x = x + 3, x = : %d\n",x); printf("\n"); printf("Setelah x = x * 2, x = : %d\n",x); printf("\n"); system("pause");}