/* This function fills up the array (up to max_accts) and returns the actual number of accounts read in (referred to as num_accts). */ int read_accts(Bank& bank, int max_accts) { int i = 0; //ifstream infile("C:\\Users\\Smart PC\\Desktop\\Assignment 3 (3110)\\myinput.txt"); ifstream infile("myinput"); string whiteSpace; getline(infile, whiteSpace); // check is file can be opened if (infile) { // read only first max_accts accounts, // in order to avoid overflow for (i = 0; i<max_accts; i++) { string firstName; string lastName; string ssn; string accountType; int accountNumber; int status; double balance; int transactions; infile >> firstName; // check is end of file reached if (!infile.eof()) { infile >> lastName; infile >> ssn; infile >> accountNumber; infile >> accountType; infile >> balance; infile >> status; infile >> transactions; bank.addAccount(firstName, lastName, ssn, accountNumber, accountType, balance, status); int index = bank.findAccount(accountNumber); Account* acc = bank.getAccount(index); for(int i=0; i<transactions; i++) { string transactionType; double amount; infile >> transactionType; infile >> amount; if (acc) acc->addTransaction(Transaction(transactionType, amount)); } } else { break; } }
int main(){ Bank *myBank; myBank = new Bank("Zinger unlimited"); cout << "-------------------------------------------------"<<endl; cout << " TEST: STATIC members "<<endl; cout << "-------------------------------------------------"<<endl; myBank->addAccount("Anton Hofmann", 100.0); myBank->addAccount("Beta Hofmann", 200.0); myBank->addAccount("Gamma Hofmann", 300.0); cout << myBank->toString() << endl; cout << "--- Delete Account: Anton Hofmann and add Account: Omega Hofmann ---" << endl; cout << "Look at the account number!!!"<<endl; myBank->delAccount("Anton Hofmann"); myBank->addAccount("Omega Hofmann", 900.0); cout << myBank->toString() << endl; cout << endl; cout << "-------------------------------------------------"<<endl; cout << " TEST: FRIEND class "<<endl; cout << "-------------------------------------------------"<<endl; cout << " ONLY class bank can create new Account-objects" <<endl; int accountNr= myBank->addAccount("Anton Hofmann", 100.0); myBank->getAccount(accountNr).deposit(9000.0); cout << myBank->toString() << endl; cout << endl; cout << "-------------------------------------------------"<<endl; cout << " TEST: Prepare "<<endl; cout << "-------------------------------------------------"<<endl; cout << "... 1. double d= myBank->getMaxAccount().getAmount(); "<<endl; double d = myBank->getMaxAccount().getAmount(); cout << "... Maximal amount = " << d << endl <<endl; cout << "... 2. double d= myBank->getMaxAccount().getAmount(); "<<endl; d= myBank->getStandardDeviation(); cout << "... Standard Deviation = " << d << endl << endl; cout << "... 3. myBank->delAccount(myBank->getAverageAmount()); "<<endl; cout << "... delete all Account having less then the average amount"<<endl; cout << "... Average Amount= " << myBank->getAverageAmount() << endl<<endl; myBank->delAccount(myBank->getAverageAmount()); cout << myBank->toString() << endl; cout << endl; d= myBank->getStandardDeviation(); cout << "Standard Deviation = " << d << endl << endl; delete myBank; return 0; }