Java: An Introduction to Problem Solving and Programming (7th Edition)
Java: An Introduction to Problem Solving and Programming (7th Edition)
7th Edition
ISBN: 9780133766264
Author: Walter Savitch
Publisher: PEARSON
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
2. Perform resource allocation for the following project. Resource limits are 6 labors and 2 helpers. Legend: Activity Dur Resources G H 2 3 2L 1H 2L OH A 1 3L 1H + B D F J K 3 4 6 2 4 4L 2H 3L OH 4L 1H 2L 2H 4L 2H C E 2 2 I 1 2L 1H 3L 1H 5L 1H
Need Java method please. Thank you.
Need Java method please. Thank you.

Chapter 8 Solutions

Java: An Introduction to Problem Solving and Programming (7th Edition)

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