belajar-cpp/pertemuan-03 at main · illhammf/belajar-cpp · GitHub
Skip to content

Latest commit

 

History

History

pertemuan-03

README.md

Pertemuan 03 — Operator & Expression

Pada pertemuan ini kita akan mempelajari operator yang digunakan untuk melakukan perhitungan, memberikan nilai, membandingkan data, dan membuat logika sederhana dalam C++.


🎯 Tujuan Pembelajaran

Setelah menyelesaikan pertemuan ini, kita diharapkan mampu:

  • Memahami arithmetic operator.
  • Memahami assignment operator.
  • Memahami comparison operator.
  • Memahami logical operator.
  • Memahami increment dan decrement.
  • Memahami expression.
  • Menggunakan operator dalam program sederhana.
  • Memahami perbedaan = dan ==.

1. Apa Itu Operator?

Operator adalah simbol yang digunakan untuk melakukan suatu operasi terhadap data.

Contoh:

int hasil = 10 + 5;

Pada kode tersebut:

10
 ↓
Operand

+
 ↓
Operator

5
 ↓
Operand

Hasilnya:

15

Secara sederhana:

Operand + Operator + Operand

2. Arithmetic Operator

Arithmetic operator digunakan untuk melakukan operasi matematika.

Operator Fungsi Contoh
+ Penjumlahan 10 + 5
- Pengurangan 10 - 5
* Perkalian 10 * 5
/ Pembagian 10 / 5
% Sisa pembagian 10 % 3

Contoh:

int a = 10;
int b = 3;

cout << a + b << endl;
cout << a - b << endl;
cout << a * b << endl;
cout << a / b << endl;
cout << a % b << endl;

Output:

13
7
30
3
1

3. Operator Penjumlahan +

Digunakan untuk menjumlahkan dua nilai.

int a = 10;
int b = 5;

int hasil = a + b;

cout << hasil;

Output:

15

4. Operator Pengurangan -

Digunakan untuk mengurangi nilai.

int a = 10;
int b = 5;

int hasil = a - b;

cout << hasil;

Output:

5

5. Operator Perkalian *

Digunakan untuk mengalikan nilai.

int a = 10;
int b = 5;

int hasil = a * b;

cout << hasil;

Output:

50

6. Operator Pembagian /

Digunakan untuk membagi nilai.

int a = 10;
int b = 5;

int hasil = a / b;

cout << hasil;

Output:

2

Perhatikan tipe data yang digunakan.

Jika:

int a = 10;
int b = 3;

maka:

cout << a / b;

menghasilkan:

3

bukan:

3.33333

Karena kedua operand bertipe int.

Jika ingin mendapatkan hasil desimal:

double hasil = static_cast<double>(a) / b;

7. Operator Sisa Pembagian %

Operator % digunakan untuk mendapatkan sisa dari pembagian.

Contoh:

int hasil = 10 % 3;

Hasil:

1

Karena:

10 ÷ 3 = 3 sisa 1

Contoh lain:

int hasil = 10 % 2;

Hasil:

0

Operator % sangat berguna untuk mengecek bilangan genap dan ganjil.

Contoh:

int angka = 10;

cout << angka % 2;

Output:

0

Artinya 10 habis dibagi 2.


8. Assignment Operator

Assignment operator digunakan untuk memberikan nilai kepada variable.

Operator paling dasar adalah:

=

Contoh:

int umur = 20;

Artinya variable umur diberikan nilai 20.


Assignment dengan Operasi

C++ juga menyediakan bentuk singkat untuk melakukan operasi sekaligus assignment.

Operator Arti
= Memberikan nilai
+= Menambahkan nilai
-= Mengurangi nilai
*= Mengalikan nilai
/= Membagi nilai
%= Menyimpan sisa pembagian

Contoh:

int angka = 10;

angka += 5;

Sama dengan:

angka = angka + 5;

Nilai akhirnya:

15

9. Contoh Assignment Operator

int angka = 10;

angka += 5;
cout << angka << endl;

angka -= 3;
cout << angka << endl;

angka *= 2;
cout << angka << endl;

angka /= 4;
cout << angka << endl;

Perubahan nilainya:

10
 ↓
+5
 ↓
15
 ↓
-3
 ↓
12
 ↓
×2
 ↓
24
 ↓
÷4
 ↓
6

10. Comparison Operator

Comparison operator digunakan untuk membandingkan dua nilai.

Hasil perbandingan adalah:

true

atau:

false

Operator yang tersedia:

Operator Arti
> Lebih besar
< Lebih kecil
>= Lebih besar atau sama dengan
<= Lebih kecil atau sama dengan
== Sama dengan
!= Tidak sama dengan

Contoh:

int a = 10;
int b = 5;

cout << (a > b);

Hasil:

1

Karena 10 memang lebih besar dari 5.


11. Perbedaan = dan ==

Ini adalah salah satu hal yang sangat penting dalam C++.

=

Digunakan untuk memberikan nilai.

int umur = 20;

Artinya:

umur diberi nilai 20

==

Digunakan untuk membandingkan.

umur == 20

Artinya:

Apakah umur sama dengan 20?

Jadi:

=
Assignment

==
Comparison

Jangan sampai tertukar.


12. Contoh Comparison

int umur = 20;

cout << (umur > 17) << endl;
cout << (umur < 17) << endl;
cout << (umur >= 20) << endl;
cout << (umur <= 20) << endl;
cout << (umur == 20) << endl;
cout << (umur != 20) << endl;

Hasil:

1
0
1
1
1
0

Secara konsep:

20 > 17   → true
20 < 17   → false
20 >= 20  → true
20 <= 20  → true
20 == 20  → true
20 != 20  → false

13. Logical Operator

Logical operator digunakan untuk menggabungkan atau membalik kondisi.

Ada tiga operator utama:

Operator Nama Arti
&& AND Dan
` ` OR Atau
! NOT Membalik kondisi

14. Logical AND &&

&& akan menghasilkan true jika semua kondisi benar.

Contoh:

int umur = 20;

cout << (umur >= 17 && umur <= 30);

Kondisinya:

umur >= 17
    ↓
  true

umur <= 30
    ↓
  true

Karena keduanya benar:

true && true
     ↓
   true

15. Logical OR ||

|| menghasilkan true jika minimal salah satu kondisi benar.

Contoh:

int umur = 20;

cout << (umur < 17 || umur >= 20);

Kondisinya:

umur < 17
   ↓
 false

umur >= 20
   ↓
 true

Maka:

false || true
      ↓
    true

16. Logical NOT !

! digunakan untuk membalik nilai boolean.

Contoh:

bool lulus = true;

cout << !lulus;

Hasil:

0

Karena:

true
 ↓
!
 ↓
false

Sebaliknya:

bool lulus = false;

cout << !lulus;

hasilnya:

1

17. Increment ++

Increment digunakan untuk menambahkan nilai sebesar 1.

Contoh:

int angka = 10;

angka++;

cout << angka;

Output:

11

Sama seperti:

angka = angka + 1;

18. Decrement --

Decrement digunakan untuk mengurangi nilai sebesar 1.

int angka = 10;

angka--;

cout << angka;

Output:

9

Sama seperti:

angka = angka - 1;

19. Prefix dan Postfix

Increment dan decrement memiliki dua bentuk.

Postfix

angka++;
angka--;

Prefix

++angka;
--angka;

Untuk perubahan nilai sederhana, keduanya sama-sama mengubah nilai sebesar 1.

Perbedaannya akan terasa ketika operator digunakan sebagai bagian dari sebuah expression.

Contoh:

int angka = 10;

int hasil = angka++;

Setelah kode tersebut:

hasil = 10
angka = 11

Sedangkan:

int angka = 10;

int hasil = ++angka;

Hasil:

hasil = 11
angka = 11

Intinya:

angka++
→ gunakan nilai terlebih dahulu, kemudian tambah 1

++angka
→ tambah 1 terlebih dahulu, kemudian gunakan nilainya

20. Apa Itu Expression?

Expression adalah kombinasi dari variable, nilai, operator, atau fungsi yang menghasilkan sebuah nilai.

Contoh:

10 + 5

merupakan expression.

Contoh:

int hasil = 10 + 5;

Expression-nya:

10 + 5

Hasilnya:

15

21. Expression dengan Variable

Expression juga dapat menggunakan variable.

int a = 10;
int b = 5;

int hasil = a + b;

Expression:

a + b

menghasilkan:

15

Contoh yang lebih kompleks:

int a = 10;
int b = 5;

int hasil = (a + b) * 2;

Perhitungannya:

(10 + 5) × 2
      ↓
     15 × 2
      ↓
      30

22. Urutan Operasi

C++ mengikuti aturan prioritas operator.

Contoh:

int hasil = 10 + 5 * 2;

Hasilnya:

20

Bukan:

30

Karena perkalian dilakukan terlebih dahulu:

5 × 2 = 10

10 + 10 = 20

Jika ingin menentukan urutan sendiri, gunakan tanda kurung:

int hasil = (10 + 5) * 2;

Hasil:

30

Untuk tahap awal, biasakan menggunakan tanda kurung jika expression mulai kompleks agar lebih mudah dibaca.


23. Contoh Program Operator

Sekarang kita gabungkan beberapa operator.

#include <iostream>
using namespace std;

int main()
{
    int a;
    int b;

    cout << "Masukkan angka pertama: ";
    cin >> a;

    cout << "Masukkan angka kedua: ";
    cin >> b;

    cout << endl;
    cout << "=== HASIL ===" << endl;

    cout << "Penjumlahan : " << a + b << endl;
    cout << "Pengurangan : " << a - b << endl;
    cout << "Perkalian   : " << a * b << endl;
    cout << "Pembagian   : " << a / b << endl;
    cout << "Sisa        : " << a % b << endl;

    return 0;
}

Contoh:

Masukkan angka pertama: 10
Masukkan angka kedua: 3

=== HASIL ===
Penjumlahan : 13
Pengurangan : 7
Perkalian   : 30
Pembagian   : 3
Sisa        : 1

24. Contoh Program Comparison

Kita juga dapat membandingkan input pengguna.

#include <iostream>
using namespace std;

int main()
{
    int umur;

    cout << "Masukkan umur: ";
    cin >> umur;

    cout << "Umur >= 17 : " << (umur >= 17) << endl;
    cout << "Umur < 17  : " << (umur < 17) << endl;
    cout << "Umur == 20 : " << (umur == 20) << endl;

    return 0;
}

Jika memasukkan:

20

hasilnya:

Umur >= 17 : 1
Umur < 17  : 0
Umur == 20 : 1

🧪 Mini Challenge

Challenge 01 — Kalkulator Sederhana

Buat program yang meminta dua angka:

Angka pertama:
Angka kedua:

Kemudian tampilkan:

Penjumlahan:
Pengurangan:
Perkalian:
Pembagian:
Sisa:

Challenge 02 — Cek Genap atau Ganjil

Buat program yang menerima satu angka.

Gunakan operator:

%

Petunjuk:

angka % 2

Jika hasilnya:

0

maka angka tersebut genap.

Jika bukan 0, maka angka tersebut ganjil.

Pada challenge ini kita belum menggunakan if. Coba pahami dulu bagaimana operator % bekerja.


Challenge 03 — Perbandingan Nilai

Buat program yang meminta dua nilai:

Nilai pertama:
Nilai kedua:

Kemudian tampilkan hasil perbandingan:

Nilai pertama > nilai kedua
Nilai pertama < nilai kedua
Nilai pertama == nilai kedua

Challenge 04 — Operator Assignment

Buat variable:

int angka = 10;

Kemudian gunakan:

+=
-=
*=
/=

Tampilkan nilai angka setelah setiap operasi.


💡 Tips Belajar

Operator akan menjadi fondasi penting untuk materi berikutnya.

Jangan hanya menghafalkan simbolnya.

Pahami maksudnya:

+   → menghitung
-   → menghitung
*   → menghitung
/   → menghitung
%   → mencari sisa

=   → memberikan nilai

>   → membandingkan
<   → membandingkan
==  → membandingkan
!=  → membandingkan

&&  → semua kondisi harus benar
||  → salah satu kondisi benar
!   → membalik kondisi

++  → tambah 1
--  → kurang 1

✅ Checklist

  • Memahami operator.
  • Memahami operand.
  • Memahami arithmetic operator.
  • Memahami assignment operator.
  • Memahami +=, -=, *=, /=, %=.
  • Memahami comparison operator.
  • Memahami perbedaan = dan ==.
  • Memahami logical operator.
  • Memahami &&.
  • Memahami ||.
  • Memahami !.
  • Memahami ++.
  • Memahami --.
  • Memahami prefix dan postfix.
  • Memahami expression.
  • Memahami dasar prioritas operator.

🧠 Kesimpulan

Pada pertemuan sebelumnya kita belajar menyimpan data menggunakan variable.

Sekarang kita sudah belajar bagaimana data tersebut dapat diproses:

Variable
    ↓
Operator
    ↓
Expression
    ↓
Hasil

Contohnya:

int a = 10;
int b = 5;

int hasil = (a + b) * 2;

Alurnya:

a + b
 ↓
10 + 5
 ↓
15
 ↓
15 × 2
 ↓
30

Operator adalah salah satu fondasi utama dalam pemrograman karena hampir semua program membutuhkan operasi terhadap data.


🚀 Next Step

Pertemuan 04 — Conditional Statement

Pada pertemuan berikutnya kita akan mulai membuat program yang bisa mengambil keputusan.

Materi:

if
 ↓
else
 ↓
else if
 ↓
nested if
 ↓
conditional logic

Contohnya nanti program dapat melakukan:

Jika nilai >= 75
        ↓
     LULUS

Jika nilai < 75
        ↓
     TIDAK LULUS

Di sinilah operator perbandingan dan logical operator yang kita pelajari pada pertemuan ini mulai benar-benar terasa kegunaannya.


Happy Coding! 🚀