Problem Solving with C++ (10th Edition)
Problem Solving with C++ (10th Edition)
10th Edition
ISBN: 9780134448282
Author: Walter Savitch, Kenrick Mock
Publisher: PEARSON
Expert Solution & Answer
Book Icon
Chapter 15.3, Problem 11STE

Explanation of Solution

Program:

File name: sale.h

//include libraries

#ifndef SALE_H

#define SALE_H

#include <iostream>

using namespace std;

//using the namespace

namespace salesavitch

{

    //create a class

    class Sale

    {

        //define access specifier

        public:

        //declare the constructors

        Sale();

        Sale(double thePrice);

        //define required methods

        double bill() const;

        double savings(const Sale& other) const;

        //define access specifier

        protected:

        //declare required variables

        double price;

    };

    //define an overloaded method

    bool operator <(const Sale& first, const Sale&

  second);

}

#endif // SALE_H

File name: discount.h

//include libraries

#ifndef DISCOUNTSALE_H

#define DISCOUNTSALE_H

#include "sale.h"

//using the namespace

namespace salesavitch

{

    //create a class

    class DiscountSale : public Sale

    {

        //define access specifier

        public:

        //declare the constructors

        DiscountSale();

        DiscountSale(double the_price, double the_discount);

        //Discount is expressed as a percent of the price.

        virtual double bill() const;

        //define access specifier

        protected:

        //declare required variable

        double discount;

    };

}

#endif //DISCOUNTSALE_H

File name: sale.cpp

//include libraries

#include "sale.h"

//using the namespace

namespace salesavitch

{

    //define a constructor

  Sale::Sale() : price(0)

  {}

    //define a constructor

  Sale::Sale(double the_price) : price(the_price)

  {}

    //declare a method

  double Sale::bill() const

  {

        //return statement

  return price;

  }

    //declare a method

  double Sale::savings(const Sale& other) const

  {

        //return statement

  return ( bill() - other...

Blurred answer
Students have asked these similar questions
3. Problem Description: Define the Circle2D class that contains: Two double data fields named x and y that specify the center of the circle with get methods. • A data field radius with a get method. • A no-arg constructor that creates a default circle with (0, 0) for (x, y) and 1 for radius. • A constructor that creates a circle with the specified x, y, and radius. • A method getArea() that returns the area of the circle. • A method getPerimeter() that returns the perimeter of the circle. • • • A method contains(double x, double y) that returns true if the specified point (x, y) is inside this circle. See Figure (a). A method contains(Circle2D circle) that returns true if the specified circle is inside this circle. See Figure (b). A method overlaps (Circle2D circle) that returns true if the specified circle overlaps with this circle. See the figure below. р O со (a) (b) (c)< Figure (a) A point is inside the circle. (b) A circle is inside another circle. (c) A circle overlaps another…
1. Explain in detail with examples each of the following fundamental security design principles: economy of mechanism, fail-safe default, complete mediation, open design, separation of privilege, least privilege, least common mechanism, psychological acceptability, isolation, encapsulation, modularity, layering, and least astonishment.
Security in general means the protection of an asset. In the context of computer and network security, explore and explain what assets must be protected within an online university. What the threats are to the security of these assets, and what countermeasures are available to mitigate and protect the organization from such threats. For each of the assets you identify, assign an impact level (low, moderate, or high) for the loss of confidentiality, availability, and integrity. Justify your answers.

Chapter 15 Solutions

Problem Solving with C++ (10th 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
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781305480537
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr