@@ -12,17 +12,17 @@ class Gov;
|
||||
class Gov
|
||||
{
|
||||
public:
|
||||
int factor = 6; // Money multiplier.
|
||||
int rate = 2; // Interest rate (%).
|
||||
time_t last_bailout = 0; // Time since last bailout.
|
||||
void associate (Bank *const x);
|
||||
bool disassociate (Bank *const x);
|
||||
double reserveDeposit (const Bank &x, const double amount);
|
||||
double reserveWithdraw (const Bank &x, const double amount);
|
||||
bool bailout (const Bank &x, double amount);
|
||||
static const int FACTOR = 6; // Money multiplier.
|
||||
int rate = 2; // Interest rate (%).
|
||||
bool associate (Bank *const x);
|
||||
double reserveDeposit (Bank &x, const double amount);
|
||||
double reserveWithdraw (Bank &x, const double amount);
|
||||
bool bailout (Bank &x, const double amount);
|
||||
double getReserve ();
|
||||
|
||||
private:
|
||||
double bankReserves = 0;
|
||||
time_t lastBailout = 0; // Time since last bailout.
|
||||
double reserve = 0; // Total in bank reserves.
|
||||
std::vector<Bank *> banks;
|
||||
};
|
||||
|
||||
@@ -31,14 +31,17 @@ class Bank
|
||||
friend class Gov;
|
||||
|
||||
public:
|
||||
Gov *centralBank;
|
||||
Bank (Gov *x) : centralBank (x) { x->associate (this); };
|
||||
Bank (Gov *x) : centralBank (x) { x->associate (this); }; // Must have Gov.
|
||||
double deposit (Client &x, const double amount);
|
||||
double withdraw (Client &x, const double amount);
|
||||
double getCurrent ();
|
||||
double getCurrent (const Client &x);
|
||||
double getCreditable ();
|
||||
double getCredited ();
|
||||
bool hire (Employee &x);
|
||||
bool fire (Employee &x);
|
||||
bool openAccount (Client &x);
|
||||
bool closeAccount (Client &x);
|
||||
bool newCredit (const std::string id, const double amount,
|
||||
const int installments, const int days,
|
||||
const float interest); // interest is additional interest on
|
||||
@@ -48,6 +51,7 @@ public:
|
||||
void listClients ();
|
||||
|
||||
private:
|
||||
Gov *centralBank;
|
||||
const int CLIENT_EMPLOYEE = 2; // Max number of clients to employees.
|
||||
double current = 0; // Total current accts. of clients.
|
||||
double creditable = 0; // Amount able to be loaned to clients.
|
||||
|
||||
Reference in New Issue
Block a user