Hey guys, I have created the following code and I can not figure out how to do one thing, add users. I can do it manually, but I need to prompt the user for two new accounts and then add them to the list. Can someone please inform me of how I need to do this or show me, I would greatly appreciate it!
Code:#include <iostream> #include <fstream> #include <iomanip> #include <functional> #include <algorithm> #include <string> #include <cstdlib> #include <sstream> using namespace std; //Account class class Account { private: class ListNode { friend class Account; int value; double valuetwo; double valuethree; ListNode *next; //Constructor ListNode(int value1, double value2, double value3, ListNode *next1 = NULL) { value = value1; valuetwo = value2; valuethree = value3; next = next1; } }; ListNode *head; int number; double balance; double rate; public: Account() { head = NULL; } ~Account(); Account (int, double, double); void appendNode(int, double, double); void insertNode(int, double, double); void deleteNode(int, double, double); void displayList(); void setNumber(int); void setBalance(double); void setRate(double); int getNumber(); double getBalance(); double getRate(); void account_details(); string string_account_details(); }; Account::Account(int number, double balance, double rate) { Account::number = number; Account::balance = balance; Account::rate= rate; } void Account::setNumber(int number) { Account::number = number; } void Account::setBalance(double balance) { Account::balance = balance; } void Account::setRate(double rate) { Account::rate = rate; } int Account::getNumber() { return number; } double Account::getBalance() { return balance; } double Account::getRate() { return rate; } void Account::account_details() { cout << "The current account number is " << number << " with a balance of $" << balance << " and an interest rate of " << rate << ".\n\n"; }Code:#include "Account.h" #include <iostream> using namespace std; //Append node void Account::appendNode(int number, double balance, double rate) { if (head == NULL) head = new ListNode(number, balance, rate); else { //List is not empty ListNode *nodePtr; nodePtr = head; while (nodePtr->next != NULL) nodePtr = nodePtr->next; nodePtr->next = new ListNode(number, balance, rate); } } //Display list void Account::displayList() { ListNode *nodePtr; nodePtr = head; while (nodePtr) { cout << "The account number is " << nodePtr->value << ", the balance of the account is $"<< nodePtr->valuetwo <<", and the account rate is " << nodePtr->valuethree <<"\n"; nodePtr = nodePtr->next; } } //Insert Node Function void Account::insertNode(int number, double balance, double rate) { ListNode *nodePtr, *previousNodePtr; if ( head ==NULL || head ->value >= number || head ->valuetwo >= balance || head ->valuethree >= rate) { head = new ListNode(number, balance, rate, head); } else { previousNodePtr = head; nodePtr = head->next; while (nodePtr != NULL && nodePtr->value < number && nodePtr->valuetwo < balance && nodePtr->valuethree < rate) { previousNodePtr = nodePtr; nodePtr = nodePtr->next; } previousNodePtr->next = new ListNode(number, balance, rate, nodePtr); } } //DeleteNode Function void Account::deleteNode(int number, double balance, double rate) { ListNode *nodePtr, *previousNodePtr; if (!head) return; if ( head->value == number, head->valuetwo == balance, head->valuethree == rate) { nodePtr = head; head = head->next; delete nodePtr; } else { nodePtr = head; while (nodePtr != NULL && nodePtr->value != number && nodePtr->valuetwo != balance && nodePtr->valuethree != rate) { previousNodePtr = nodePtr; nodePtr = nodePtr->next; } if (nodePtr) { previousNodePtr->next = nodePtr->next; delete nodePtr; } } } //Destructor Account::~Account() { ListNode *nodePtr, *nextNodePtr; nodePtr = head; while (nodePtr!=NULL) { nextNodePtr = nodePtr->next; delete nodePtr; nodePtr = nextNodePtr; } } int main() { Account accountList; int catchVal; double catchVal2; double catchVal3; //Get Account information cout << "Getting the first account information \n"; accountList.appendNode(126455, 1000.54, .03); cout << "Getting the second account information \n"; accountList.appendNode(254774, 1500.44, .03); cout << "Getting the third account information \n"; accountList.appendNode(333411, 230.00, .02); cout << "Getting the fourth account information \n"; accountList.appendNode(491377, 1950.50, .03); cout << "Getting the fifth account information \n"; accountList.appendNode(677134, 5164.11, .04); cout << "Getting the sixth account information \n"; accountList.appendNode(765473, 2540.10, .04); cout << "\nHere is the information in the list \n"; accountList.displayList(); cout << endl; cout << "Adding 2 new items \n"; cout << "_____________________________________________________________ \n"; return 0; }



LinkBack URL
About LinkBacks



I used to be an adventurer like you... then I took an arrow to the knee.