In c++ Language . MATCh INPUT AND OUTPUT ----------------- ABC Bank announced a new scheme of reward points for a transaction using an ATM card. Each transaction using the normal card will be provided by giving a reward percentage of the transaction amount as a reward point. If a transaction is made using a premium card and it is for fuel expenses, additional 10 points will be rewarded.  Write a program to calculate the total reward points. Strictly adhere to the Object-Oriented specifications given in the problem statement. All class names, member variable names, and function names should be the same as specified in the problem statement. A class VISACard has the following attributes. Access Specifiers Data type Variable protected string type protected double amount private int rewardPercentage Include the following method in VISACard class. Method Description public void ComputeRewardPoints() In this method, calculate and display the reward points based on rewardPercentage in amount Formula: Reward points = amount * (rewardPercentage / 100) A derived class HPVISACard derived from VISACard class and overrides the following method. Method Description public void ComputeRewardPoints() In this method, calculate the reward point. 3% of the amount will be reward points. If the transaction type is fuel, add 10 points to calculate reward points.   Formula: Transaction type (Fuel): Reward points = (amount * (3 / 100))+ 10 Type other than fuel: Reward points = amount * (3 / 100) In the Main method, obtain input from the user. Create VISACard or HPVISACard objects and invoke display methods to display the details. Card type will be either ‘VISA card’ or ‘HPVISA card’. Otherwise, display ‘Invalid input’ Calculate the reward points corresponding to the card type and transaction type and print the reward points(upto two precision). Input and Output Format: Refer sample input and output for formatting specifications. All text in bold corresponds to the input and the rest corresponds to output. Sample Input and Output 1 : Menu 1.VISA Card 2.HPVISA Card Enter the choice 1 Enter the transaction type Shopping Enter the transaction amount 5000 Enter the reward points 2 Card details: Type: Shopping Amount: 5000 Reward point: 100.0   Sample Input and Output 2 : Menu 1.VISA Card 2.HPVISA Card Enter the choice 2 Enter the transaction type Fuel Enter the transaction amount 650 Card details: Type: Fuel Amount: 650 Reward point: 29.5 Sample Input and Output 3 : Menu 1.VISA Card 2.HPVISA Card Enter the choice 3 Invalid input

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

In c++ Language . MATCh INPUT AND OUTPUT

-----------------

ABC Bank announced a new scheme of reward points for a transaction using an ATM card. Each transaction using the normal card will be provided by giving a reward percentage of the transaction amount as a reward point. If a transaction is made using a premium card and it is for fuel expenses, additional 10 points will be rewarded. 

Write a program to calculate the total reward points.

Strictly adhere to the Object-Oriented specifications given in the problem statement. All class names, member variable names, and function names should be the same as specified in the problem statement.

A class VISACard has the following attributes.

Access Specifiers Data type Variable
protected string type
protected double amount
private int rewardPercentage


Include the following method in VISACard class.

Method Description
public void ComputeRewardPoints() In this method, calculate and display the reward points
based on rewardPercentage in amount


Formula:
Reward points = amount * (rewardPercentage / 100)

A derived class HPVISACard derived from VISACard class and overrides the following method.

Method Description
public void ComputeRewardPoints() In this method, calculate the reward point.
3% of the amount will be reward points.
If the transaction type is fuel, add 10 points to calculate reward points.

 

Formula:
Transaction type (Fuel): Reward points = (amount * (3 / 100))+ 10
Type other than fuel: Reward points = amount * (3 / 100)


In the Main method, obtain input from the user.
Create VISACard or HPVISACard objects and invoke display methods to display the details.
Card type will be either ‘VISA card’ or ‘HPVISA card’. Otherwise, display ‘Invalid input’
Calculate the reward points corresponding to the card type and transaction type and print the reward points(upto two precision).

Input and Output Format:
Refer sample input and output for formatting specifications.

All text in bold corresponds to the input and the rest corresponds to output.
Sample Input and Output 1 :
Menu
1.VISA Card
2.HPVISA Card
Enter the choice
1
Enter the transaction type
Shopping
Enter the transaction amount
5000
Enter the reward points
2
Card details:
Type: Shopping
Amount: 5000
Reward point: 100.0
 

Sample Input and Output 2 :
Menu
1.VISA Card
2.HPVISA Card
Enter the choice
2
Enter the transaction type
Fuel
Enter the transaction amount
650
Card details:
Type: Fuel
Amount: 650
Reward point: 29.5

Sample Input and Output 3 :
Menu
1.VISA Card
2.HPVISA Card
Enter the choice
3
Invalid input

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Function Arguments
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.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education