Sunday, April 8, 2012

C++ Operator: Increment-decrement Operator

Operator increment merupakan operator yang digunakan untuk menambah 1 nilai suatu variabel bertipe bilangan dan operator decrement merupakan kebalikan dari operator increment, yaitu mengurangi 1 nilai dari suatu variabel.

Operator increment dalam C++ dinyatakan dengan:
++nama_varibel atau dengan nama_variabel++   
StatementBentuk Lain
i++; atau ++i; i=i+1;
i+=1;
i--; atau --i;i=i-1;
i-=1;
Tanda ++ atau -- sesudah dan sebelum variabel memberikan pengaruh yang berbeda jika operator ini digunakan pada proses assigment variabel lain. Misal:
StatementBentuk LainHasil
i=15;
A=i++;
i=15;
A=i;
i++;
A=15;
i=16;
i=20;
A=--i;
i=20;
i--;
A=i;
A=19;
i=19;

Perhatikan statement berikut:
int a=10,b=12,c=-7,hasil=0;
hasil = a++ + ++b - c++;

Statement ini akan menghasilkan nilai-nilai:
hasil = 30, a=11, b=12, dan c=-6;

Kenapa nilai Hasil=30 ??
Statement di atas mewakili :
b=b+1;
hasil=a + b - c; //10 +13 - (-7) = 30
a=a+1;
c=c+1;

Untuk lebih jelasnya anda jalankan code program berikut:
#include <iostream>
  using namespace std;
  int main() {
  int a=5,b=6,c=2,result=2;
  cout<<a<<" "<<b<<" "<<c<<" "<<result<<endl;
  result += a++ + --b - --c + ++a - b++;
  cout<<a<<" "<<b<<" "<<c<<" "<<result;
  return 0;
  }
Kode ini akan memberikan output:
5 6 2 2
7 6 1 12

Technorati Profile