Problem Solving with C++ (9th Edition)
Problem Solving with C++ (9th Edition)
9th Edition
ISBN: 9780133591743
Author: Walter Savitch
Publisher: PEARSON
bartleby

Videos

Textbook Question
Book Icon
Chapter 15, Problem 7PP

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 two 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 must have 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 that 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).

Blurred answer
Students have asked these similar questions
Write a code for OOP based game in which a player (human) will play against computer, and the player to score 100 points first, will win the game. Follow these steps to complete your code. Create a class named game, with score as its private data • Define a function which will generate random numbers between 1 and 10 and store it to private data of the class and will add it to previous score • Another function will display the scores after each turn and if the score is 100 or more then declare the player (who scored 100 in less attempts) as a winner Create two objects in the main program named as player and computer • Player will press a specific key to play in his turn • The computer's turn will be executed after the player's turn • Keep on doing this until one of them scores 100 points To generate the random numbers the following two lines must be there srand (time (0)); // to make sure that different number is generated in each turn rand (); // it will generate random numbers You…
C++ Create a class Student that contains three members: roll no, name and mark, and three functions. Write a first inputStudent() function to get data of student class. Write a second getMark() function that returns a student’s mark. Write a third display() function that displays a student’s data. In a main() function, you need to declare 40 students and get data of all students by using inputStudent() function. And also use a pointer array to keep all students by mark greater than 50 and display the searching data of each student in that pointer array (Use the access operator -> to access a pointer points to member functions of the Student class).
clockType.h file provided //clockType.h, the specification file for the class clockType#ifndef H_ClockType#define H_ClockType   class clockType {public:    void setTime(int hours, int minutes, int seconds);       //Function to set the time.       //The time is set according to the parameters.        //Postcondition: hr = hours; min = minutes;        //               sec = seconds       //   The function checks whether the values of        //   hours, minutes, and seconds are valid. If a        //   value is invalid, the default value 0 is        //   assigned.     void getTime(int& hours, int& minutes, int& seconds) const;       //Function to return the time.       //Postcondition: hours = hr; minutes = min;       //               seconds = sec     void printTime() const;       //Function to print the time.       //Postcondition: The time is printed in the form       //               hh:mm:ss.     void incrementSeconds();       //Function to increment the time by one…

Chapter 15 Solutions

Problem Solving with C++ (9th Edition)

Additional Engineering Textbook Solutions

Find more solutions based on key concepts
Design a For loop that calculates the total of the following series of numbers: 130+229+328+...+301

Starting Out with Programming Logic and Design (5th Edition) (What's New in Computer Science)

(Order three cities) Write a program that prompts the user to enter three cities and displays them in ascending...

Introduction to Java Programming and Data Structures, Comprehensive Version (11th Edition)

Find the error in the following class: public class MyClass { private int x; private double y; public void MyCl...

Starting Out with Java: From Control Structures through Objects (6th Edition)

Find the error in the following class: public class TwoValues { private int x, y; public TwoValues() { x = 0; }...

Starting Out with Java: From Control Structures through Data Structures (3rd Edition)

Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Call By Value & Call By Reference in C; Author: Neso Academy;https://www.youtube.com/watch?v=HEiPxjVR8CU;License: Standard YouTube License, CC-BY