SHARE
SPREAD
HELP

The Tradition of Sharing

Help your friends and juniors by posting answers to the questions that you know. Also post questions that are not available.


To start with, Sr2Jr’s first step is to reduce the expenses related to education. To achieve this goal Sr2Jr organized the textbook’s question and answers. Sr2Jr is community based and need your support to fill the question and answers. The question and answers posted will be available free of cost to all.

 

#
Authors:
Walter Savitch ,julia Lobur
Chapter:
Inheritance
Exercise:
Programming Projects
Question:9 | ISBN:9780321531346 | Edition: 7

Question

Banks have many different types of accounts often with different rules for

fees associated with transactions such as withdrawals. Customers are

allowed to transfer funds between accounts incurring the appropriate fees

associated with withdrawal of funds from one account.

Write a program with a base class for a bank account and two derived

classes (as described below) representing accounts with different rules for

withdrawing funds. Also write a function that transfers funds from one

account (of any type) to another. A transfer is a withdrawal from one

account and a deposit into the other. Since the transfer can be done at any time with any type of account the withdraw function in the classes must be virtual. Write a main program that creates three accounts (one from each claSs) and tests the transfer function.

For the classes, create a base class called BankAccount that has the name of the owner of the account (a string) and the balance in the account (double) as data members. Include member functions deposit and withdraw (each with a double for the amount as an argument) and accessor functions getName and getBalance. Deposit will add the amount to the balance (assuming the amount is nonnegative) and withdraw will subtract the amount from the balance (assuming the amount is nonnegative and less than or equal to the balance). Also create a class called MoneyMarketAccount that is derived from BankAccount. In a MoneyMarketAccount the user gets 2 free withdrawals in a given period of time (don’t worry about the time for this problem). After the free withdrawals have been used, a withdrawal fee of $1.50 is deducted from the balance per withdrawal. Hence, the class musthave a data member to keep track of the number of withdrawals. It also must override the withdraw definition. Finally, create a CDAccount class (to

model a Certificate of Deposit) derived from BankAccount which in

addition to having the name and balance also has an interest rate. CDs

incur penalties for early withdrawal of funds. Assume that a withdrawal of

funds (any amount) incurs a penalty of 25% of the annual interest earned

on the account. Assume the amount withdrawn plus the penalty are

deducted from the account balance. Again the withdraw function must

override the one in the base class. For all three classes, the withdraw

function should return an integer indicating the status (either ok or

insufficient funds for the withdrawal to take place). For the purposes of

this exercise do not worry about other functions and properties of these

accounts (such as when and how interest is paid).

TextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbookTextbook

Sorry the answer is not available at the moment…

If you are able to find the answer, please make sure to post it here. So that your Juniors have smile on their lips and feel happy.

Spread the 'tradition of sharing'.