Expert Solution & Answer
Book Icon
Chapter 8, Problem 13E

Explanation of Solution

 Implementation of the derived class “CombinedDiscount”:

 The implementation of the “CombinedDiscount” class derived from the “DiscountPolicy” abstract class is given below:

  • • Declare the “p1”, and “p2” variables.
  • • Define the constructor.
    • ○ Set the values to the declared variables.
  • • Define the “computeDiscount” method.
    • ○ Declare the required variables.
    • ○ Call the “computeDiscount” method with different variables.
    • ○ Return the maximum value by checking “discount1” and “discount2” values. 
  • • Define the main method.
    • ○ Create the objects for the “CombinedDiscount”, “BuyNItemsGetOneFree”, and “BulkDiscount” classes.
    • ○ The “for” loop through 1 to10 numbers.
      • ■ Call the “computeDiscount” method with objects and display the output.

 The implementation of the “BulkDiscount” class derived from the “DiscountPolicy” abstract class is given below:

  • • Declare the “min”, and “percentOff” variables.
  • • Define the constructor.
    • ○ Set the values to the declared variables.
  • • Define the “computeDiscount” method.
    • ○ If the purchase count is less than minimum, then calculate the “discount” value.
    • ○ Otherwise make “discount” as 0.
  • • Finally return the “discount” value.
  • • Define the main method.
    • ○ Create an object for the “BulkDiscount” class.
    • ○ Call the “computeDiscount” method with different parameters and display the output.

 The implementation of the “BuyNItemsGetOneFree” class derived from the “DiscountPolicy” abstract class is given below:

  • • Declare the “x” variable.
  • • Define the constructor.
    • ○ Set the values to the declared variable.
  • • Define the “computeDiscount” method.
    • ○ Declare the required variables.
    • ○ Calculate the “a” and “discount” values.
    • ○ Return the “discount” value.
  • • Define the main method.
    • ○ Create an object for the “BuyNItemsGetOneFree” class.
    • ○ The “for” loop through 1 to10 numbers.
      • ■ Call the “computeDiscount” method with the parameter and display the output.

The creation of the abstract class “DiscountPolicy” is given below:

  • • Declare the abstract method “computeDiscount” along with the two parameters “count” and “itemCost”.
    • ○ This method compute and return the discount for the purchase of a given number of single item.

 Program:

 Filename: CombinedDiscount.java

//definition of "CombinedDiscount" class

public class CombinedDiscount extends DiscountPolicy

{

    //declare the required variables 

    private DiscountPolicy p1;

    private DiscountPolicy p2;

    //definition of constructor

public CombinedDiscount(DiscountPolicy first, DiscountPolicy second )

    {

        //set the values

        p1 = first;

        p2 = second;

    }

    //definition of "computeDiscount" method

public double computeDiscount(int count, double itemCost)

    {

        //declare the required variables

        double discount1;

        double discount2;

        //call the methods with different variables

discount1 = p1.computeDiscount(count, itemCost);

discount2 = p2.computeDiscount(count, itemCost);

        //check the condition

        if(discount1 > discount2)

            //return the value

            return discount1;

        //otherwise

        else

            //return the value

            return discount2;

    }

    //definition of main method

    public static void main(String[] args)

    {

        //create the objects for the classes

DiscountPolicy buy = new BuyNItemsGetOneFree(3);

DiscountPolicy bulk = new BulkDiscount(5, 30...

Blurred answer
Students have asked these similar questions
When the given integer variable numberOfPackages is: greater than 12, output "Needs more than one box". between 5 inclusive and 12 inclusive, output "Large box". between 0 exclusive and 4 inclusive, output "Small box". less than or equal to 0, output "Invalid input". End with a newline.
summarize in a short paragraph how to Advance Incident Response and Automation in ML home based security systems
1.[30 pts] Computers generate color pictures on a video screen or liquid crystal display by mixing three different colors of light: red, green, and blue. Imagine a simple scheme, with three different lights, each of which can be turned on or off, projecting onto a glass screen: We can create eight different colors based on the absence (0) or presence (1) of light sources R,G and B: R G B Color 0 0 0 Black 0 0 1 Blue 0 1 0 Green 0 1 1 Cyan 1 0 0 Red 1 0 1 Magenta 1 1 1 0 Yellow 1 White 1 Each of these colors can be represented as a bit vector of length 3, and we can apply Boolean operations to them. a. The complement of a color is formed by turning off the lights that are on and turning on the lights that are off. What would be the complement of each of the eight colors listed above? b. Describe the effect of applying Boolean operations on the following colors: Λ 1. Red(100) ^ Magenta(101)= Blue(001) 2. Bue(001) | Green(010)= 3. Yellow(100) & Cyan(011)= 2.[30 pts] Perform the following…

Chapter 8 Solutions

Java: An Introduction to Problem Solving and Programming plus MyProgrammingLab with Pearson eText -- Access Card Package (7th Edition)

Ch. 8.2 - Rewrite the definition of the method reset for the...Ch. 8.2 - Can an object be referenced by variables of...Ch. 8.2 - What is the type or types of the variable(s) that...Ch. 8.2 - Prob. 14STQCh. 8.2 - Prob. 15STQCh. 8.2 - Consider the code below, which was discussed in...Ch. 8.2 - Prob. 17STQCh. 8.3 - Prob. 18STQCh. 8.3 - Prob. 19STQCh. 8.3 - Is overloading a method name an example of...Ch. 8.3 - In the following code, will the two invocations of...Ch. 8.3 - In the following code, which definition of...Ch. 8.4 - Prob. 23STQCh. 8.4 - Prob. 24STQCh. 8.4 - Prob. 25STQCh. 8.4 - Prob. 26STQCh. 8.4 - Prob. 27STQCh. 8.4 - Prob. 28STQCh. 8.4 - Are the two definitions of the constructors given...Ch. 8.4 - The private method skipSpaces appears in the...Ch. 8.4 - Describe the implementation of the method drawHere...Ch. 8.4 - Is the following valid if ShapeBaSe is defined as...Ch. 8.4 - Prob. 33STQCh. 8.5 - Prob. 34STQCh. 8.5 - What is the difference between what you can do in...Ch. 8.5 - Prob. 36STQCh. 8 - Consider a program that will keep track of the...Ch. 8 - Implement your base class for the hierarchy from...Ch. 8 - Draw a hierarchy for the components you might find...Ch. 8 - Suppose we want to implement a drawing program...Ch. 8 - Create a class Square derived from DrawableShape,...Ch. 8 - Create a class SchoolKid that is the base class...Ch. 8 - Derive a class ExaggeratingKid from SchoolKid, as...Ch. 8 - Create an abstract class PayCalculator that has an...Ch. 8 - Derive a class RegularPay from PayCalculator, as...Ch. 8 - Create an abstract class DiscountPolicy. It should...Ch. 8 - Derive a class BulkDiscount from DiscountPolicy,...Ch. 8 - Derive a class BuyNItemsGetOneFree from...Ch. 8 - Prob. 13ECh. 8 - Prob. 14ECh. 8 - Create an interface MessageEncoder that has a...Ch. 8 - Create a class SubstitutionCipher that implements...Ch. 8 - Create a class ShuffleCipher that implements the...Ch. 8 - Define a class named Employee whose objects are...Ch. 8 - Define a class named Doctor whose objects are...Ch. 8 - Create a base class called Vehicle that has the...Ch. 8 - Create a new class called Dog that is derived from...Ch. 8 - Define a class called Diamond that is derived from...Ch. 8 - Prob. 2PPCh. 8 - Prob. 3PPCh. 8 - Prob. 4PPCh. 8 - Create an interface MessageDecoder that has a...Ch. 8 - For this Programming Project, start with...Ch. 8 - Modify the Student class in Listing 8.2 so that it...Ch. 8 - Prob. 8PPCh. 8 - Prob. 9PPCh. 8 - Prob. 10PP
Knowledge Booster
Background pattern image
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning