1. Pengertian Operator Assignment
Operator assignment (operator penugasan) adalah operator yang digunakan untuk memberikan nilai ke suatu variabel.
Bentuk umum:
variabel = nilai;
Contoh:
int x = 10; // x diberi nilai 10
Operator assignment juga punya bentuk gabungan yang disebut compound assignment, berguna memperpendek penulisan.
2. Jenis-Jenis Operator Assignment
2.1 Operator Assignment Dasar
| Operator | Arti | Contoh | Penjelasan |
|---|---|---|---|
= | assignment (penugasan) | x = 5 | memberi nilai 5 ke x |
2.2 Operator Assignment Gabungan (Compound Assignment)
A. Aritmatika
| Operator | Arti | Contoh | Sama dengan |
|---|---|---|---|
+= | tambah lalu assign | x += 3 | x = x + 3 |
-= | kurang lalu assign | x -= 2 | x = x - 2 |
*= | kali lalu assign | x *= 4 | x = x * 4 |
/= | bagi lalu assign | x /= 2 | x = x / 2 |
%= | modulus lalu assign | x %= 3 | x = x % 3 |
B. Bitwise Assignment
| Operator | Arti | Contoh | Sama dengan |
|---|---|---|---|
&= | bitwise AND assign | x &= 1 | x = x & 1 |
|= | bitwise OR assign | x |= 2 | x = x | 2 |
^= | bitwise XOR assign | x ^= 3 | x = x ^ 3 |
<<= | shift kiri assign | x <<= 1 | x = x << 1 |
>>= | shift kanan assign | x >>= 1 | x = x >> 1 |
3. Mengapa Menggunakan Operator Assignment?
✔ Lebih ringkas
x = x + 10; // panjang
x += 10; // lebih singkat
✔ Lebih mudah dibaca
Terutama pada perulangan dan operasi berulang.
✔ Mencegah penulisan berulang
Mengurangi kemungkinan salah ketik pada ekspresi panjang.
4. Contoh Program Operator Assignment (Aritmatika)
#include <iostream>
using namespace std;
int main() {
int x = 10;
cout << "Nilai awal x = " << x << endl;
x += 5;
cout << "Setelah x += 5 -> " << x << endl;
x -= 3;
cout << "Setelah x -= 3 -> " << x << endl;
x *= 2;
cout << "Setelah x *= 2 -> " << x << endl;
x /= 4;
cout << "Setelah x /= 4 -> " << x << endl;
x %= 3;
cout << "Setelah x %= 3 -> " << x << endl;
return 0;
}
5. Contoh Program Operator Assignment (Bitwise)
#include <iostream>
using namespace std;
int main() {
int x = 6; // biner: 110
x &= 3; // 110 & 011 = 010 (2)
cout << "x &= 3 : " << x << endl;
x |= 4; // 010 | 100 = 110 (6)
cout << "x |= 4 : " << x << endl;
x ^= 5; // 110 ^ 101 = 011 (3)
cout << "x ^= 5 : " << x << endl;
x <<= 1; // geser kiri → 110 becomes 1100 (12)
cout << "x <<= 1: " << x << endl;
x >>= 2; // geser kanan → 1100 becomes 11 (3)
cout << "x >>= 2: " << x << endl;
return 0;
}
6. Studi Kasus: Program Penghitungan Total Belanja
Menggunakan operator assignment +=.
#include <iostream>
using namespace std;
int main() {
int harga, total = 0;
cout << "Masukkan harga barang (0 untuk selesai):\n";
while (true) {
cout << "Harga: ";
cin >> harga;
if (harga == 0) break;
total += harga; // sama dengan total = total + harga
}
cout << "Total belanja = " << total << endl;
return 0;
}
7. Latihan untuk Mahasiswa
- Buat program yang menambahkan nilai variabel secara bertahap menggunakan
+=. - Simulasikan pengurangan stok barang menggunakan
-=. - Buat program manipulasi bit (AND, OR, XOR) menggunakan operator assignment.
- Buat program perhitungan jarak mobil:
- menggunakan
+=untuk menambah jarak setiap kilometer.
- menggunakan