Thursday 8 October 2009

Array of Object: Program Bank Account

Berikut ini adalah contoh program bank account sederhana yang menggabungkan konsep array/ larik dengan konsep object pada OOP. Dengan integrasi ini, program mampu menyimpan lebih dari satu object yang mempunyai induk class yang sama, yaitu bank account. Untuk navigasi dari object satu ke object yang lain digunakan data dari nomer rekening yang tersimpan dalam array.

#include "iostream.h"
class bank_account
{
private:
int pin;
long int no_rekening, no_rek_tujuan;
char nama [20];
char alamat [30];
long int uang;
long int saldo;
char tagihan [10];
public:
bank_account() //default constructor
{ cout << "Constructor executed..." << endl;
saldo = 0;
pin = 0;
}
bank_account(int x, int y = 1000) //parameterized cons
{ saldo = x;
pin = y;
}
bank_account(bank_account &ba)
{ saldo = ba.saldo;
pin = ba.pin;
}
~bank_account()
{ cout << "Destructor executed..." << endl;
}
void rek_baru()
{ cout <> nama;
cout <> alamat;
cout <> no_rekening;
cout <> pin;
cout <> saldo;
cout << "Rekening Anda sudah aktif\n";
};
void setoran()
{ cout <> uang;
saldo = saldo + uang;
cout << "Saldo Anda sekarang adalah = " << saldo << endl;
};
void penarikan()
{ cout <> uang;
if (saldo >= uang)
{ saldo = saldo - uang;
cout << "Saldo Anda sekarang adalah = " << saldo << endl;
}
else cout << "Saldo tidak mencukupi\n";
};
void cek_saldo()
{ cout << "Saldo Anda = " << saldo << endl;
}
long int get_rek()
{ return(no_rekening);
}
};
void main()
{
bank_account nasabah[5];
int menu, nomer, jumlah_nasabah = 0;

do
{
cout << "\nMENU\n1. Buat Rekening\n2. Setoran\n3. Penarikan\n";
cout <> menu;
switch (menu)
{
case 1: nasabah[jumlah_nasabah].rek_baru();
jumlah_nasabah++; break;
case 2: cout <> nomer;
for(int i=0; i=5) cout <<"Not found\n";
break;
case 3: cout <> nomer;
for(int i=0; i=5) cout <<"Not found\n";
break;
case 4: cout <> nomer;
for(int i=0; i=5) cout <<"Not found\n";
}
}while (menu < 5);
cout << "bye bye...\n";
}