Menu
CoddyTech

Post Increment/Decrement

Termasuk bagian Dasar-Dasar dalam perjalanan C++ di Coddy. Pelajaran 19 dari 74.

Di pelajaran sebelumnya, kita membahas operator increment (++) dan decrement (--). Operator ini memiliki dua bentuk: prefix dan postfix.

Bentuk prefix ditulis sebelum variabel (misalnya, ++x atau --x), dan bentuk postfix ditulis setelah variabel (misalnya, x++ atau x--).

Mengetahui bentuk mana yang harus digunakan itu penting dalam praktik. Misalnya, dalam game kamu mungkin mencatat skor pemain dengan score++ setelah setiap serangan, atau menggunakan --lives untuk langsung mencerminkan nyawa yang hilang sebelum memeriksa apakah game sudah berakhir. Dalam perulangan, pilihan antara prefix dan postfix dapat memengaruhi nilai yang digunakan dalam ekspresi sebelum atau sesudah pembaruan.

Perbedaan antara kedua bentuk ini halus, tetapi penting:

  • Bentuk prefix: Menambah/mengurangi variabel, lalu mengembalikan nilai baru.
  • Bentuk postfix: Mengembalikan nilai variabel saat ini, lalu menambah/menguranginya.

Berikut contoh untuk menggambarkan perbedaannya:

int x = 5;
int y = x++;
// y = 5, x = 6 (postfix: y mendapat nilai awal, lalu x bertambah 1)

int a = 5;
int b = ++a;
// b = 6, a = 6 (prefix: a bertambah 1 terlebih dahulu, lalu b mendapat nilai baru)

Pada kasus pertama, y diberi nilai awal x (5), lalu x bertambah menjadi 6. Pada kasus kedua, a bertambah terlebih dahulu, lalu nilainya yang baru (6) diberikan kepada b.

Logika yang sama berlaku untuk operator pengurangan:

int x = 5;
int y = x--;
// y = 5, x = 4 (postfix: y mendapat nilai awal, lalu nilai x dikurangi 1)

int a = 5;
int b = --a;
// b = 4, a = 4 (prefix: nilai a dikurangi 1 terlebih dahulu, lalu b mendapat nilai baru)
challenge icon

Tantangan

Pemula

Kamu diberi kode dengan inisialisasi x, y, dan z. (Jangan hapus baris-baris ini!)

Tugasmu adalah menggunakan operator increment/decrement untuk melakukan operasi berikut, dengan urutan ini:

  1. Gunakan operator increment postfix untuk menetapkan nilai x saat ini ke a, lalu increment x.
  2. Gunakan operator decrement prefix untuk decrement y, lalu tetapkan nilai barunya ke b.
  3. Gunakan operator decrement postfix untuk menetapkan nilai z saat ini ke c, lalu decrement z.

Setelah melakukan operasi ini, cetak nilai a, b, c, x, y, dan z ke konsol dengan format berikut:

a: [value of a]
b: [value of b]
c: [value of c]
x: [value of x]
y: [value of y]
z: [value of z]

Coba sendiri

#include <iostream>

int main() {
    int x = 10;
    int y = 20;
    int z = 30;
    
    int a, b, c;
    
    // Ketik kodemu di bawah ini
    
    
    // Jangan ubah baris-baris di bawah ini
    std::cout << "a: " << a << std::endl;
    std::cout << "b: " << b << std::endl;
    std::cout << "c: " << c << std::endl;
    std::cout << "x: " << x << std::endl;
    std::cout << "y: " << y << std::endl;
    std::cout << "z: " << z << std::endl;
    
    return 0;
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler C++ online