/ FILE: IntSet.h - header file for IntSet class // CLASS PROVIDED: IntSet (a container class for a set of // int values) // // CONSTANT // static const int MAX_SIZE = ____ // IntSet::MAX_SIZE is the highest # of elements an IntSet // can accommodate. // // CONSTRUCTOR // IntSet() // Pre: (none) // Post: The invoking IntSet is initialized to an empty // IntSet (i.e., one containing no relevant elements). // // CONSTANT MEMBER FUNCTIONS (ACCESSORS) // int size() const // Pre: (none) // Post: Number of elements in the invoking IntSet is returned. // bool isEmpty() const // Pre: (none) // Post: True is returned if the invoking IntSet has no relevant // relevant elements, otherwise false is returned. // bool contains(int anInt) const // Pre: (none) // Post: true is returned if the invoking IntSet has anInt as an // element, otherwise false is returned. // bool isSubsetOf(const IntSet& otherIntSet) const // Pre: (none) // Post: True is returned if all elements of the invoking IntSet // are also elements of otherIntSet, otherwise false is // returned. // By definition, true is returned if the invoking IntSet // is empty (i.e., an empty IntSet is always isSubsetOf // another IntSet, even if the other IntSet is also empty). // void DumpData(std::ostream& out) const // Pre: (none) // Post: Contents of the invoking IntSet have been inserted into // out with 2 spaces separating one item from another if // if there are 2 or more items. // IntSet unionWith(const IntSet& otherIntSet) const // Pre: size() + (otherIntSet.subtract(*this)).size() <= MAX_SIZE // Post: An IntSet representing the union of the invoking IntSet // and otherIntSet is returned. // Note: Equivalently (see postcondition of add), the IntSet // returned is one that initially is an exact copy of the // invoking IntSet but subsequently has all elements of // otherIntSet added. // IntSet intersect(const IntSet& otherIntSet) const // Pre: (none) // Post: An IntSet representing the intersection of the invoking // IntSet and otherIntSet is returned. // Note: Equivalently (see postcondition of remove), the IntSet // returned is one that initially is an exact copy of the // invoking IntSet but subsequently has all of its elements // that are not also elements of otherIntSet removed. // IntSet subtract(const IntSet& otherIntSet) const // Pre: (none) // Post: An IntSet representing the difference between the invoking // IntSet and otherIntSet is returned. // Note: Equivalently (see postcondition of remove), the IntSet // returned is one that initially is an exact copy of the // invoking IntSet but subsequently has all elements of // otherIntSet removed. // // MODIFICATION MEMBER FUNCTIONS (MUTATORS) // void reset() // Pre: (none) // Post: The invoking IntSet is reset to become an empty IntSet // (i.e., one containing no relevant elements). // bool add(int anInt) // Pre: contains(anInt) ? size() <= MAX_SIZE : size() < MAX_SIZE // Post: If contains(anInt) returns false, anInt has been // added to the invoking IntSet as a new element and // true is returned, otherwise the invoking IntSet is // unchanged and false is returned. // bool remove(int anInt) // Pre: (none) // Post: If contains(anInt) returns true, anInt has been // removed from the invoking IntSet and true is // returned, otherwise the invoking IntSet is unchanged // and false is returned. // // NON-MEMBER FUNCTIONS // bool equal(const IntSet& is1, const IntSet& is2) // Pre: (none) // Post: True is returned if is1 and is2 have the same elements, // otherwise false is returned; for e.g.: {1,2,3}, {1,3,2}, // {2,1,3}, {2,3,1}, {3,1,2}, and {3,2,1} are all equal. // Note: By definition, two empty IntSet's are equal. #ifndef INT_SET_H #define INT_SET_H #include class IntSet { public: static const int MAX_SIZE = 10; IntSet(); int size() const; bool isEmpty() const; bool contains(int anInt) const; bool isSubsetOf(const IntSet& otherIntSet) const; void DumpData(std::ostream& out) const; IntSet unionWith(const IntSet& otherIntSet) const; IntSet intersect(const IntSet& otherIntSet) const; IntSet subtract(const IntSet& otherIntSet) const; void reset(); bool add(int anInt); bool remove(int anInt); private: int data[MAX_SIZE]; int used; }; bool equal(const IntSet& is1, const IntSet& is2); #endif
// FILE: IntSet.h - header file for IntSet class
// CLASS PROVIDED: IntSet (a container class for a set of
// int values)
//
// CONSTANT
// static const int MAX_SIZE = ____
// IntSet::MAX_SIZE is the highest # of elements an IntSet
// can accommodate.
//
// CONSTRUCTOR
// IntSet()
// Pre: (none)
// Post: The invoking IntSet is initialized to an empty
// IntSet (i.e., one containing no relevant elements).
//
// CONSTANT MEMBER FUNCTIONS (ACCESSORS)
// int size() const
// Pre: (none)
// Post: Number of elements in the invoking IntSet is returned.
// bool isEmpty() const
// Pre: (none)
// Post: True is returned if the invoking IntSet has no relevant
// relevant elements, otherwise false is returned.
// bool contains(int anInt) const
// Pre: (none)
// Post: true is returned if the invoking IntSet has anInt as an
// element, otherwise false is returned.
// bool isSubsetOf(const IntSet& otherIntSet) const
// Pre: (none)
// Post: True is returned if all elements of the invoking IntSet
// are also elements of otherIntSet, otherwise false is
// returned.
// By definition, true is returned if the invoking IntSet
// is empty (i.e., an empty IntSet is always isSubsetOf
// another IntSet, even if the other IntSet is also empty).
// void DumpData(std::ostream& out) const
// Pre: (none)
// Post: Contents of the invoking IntSet have been inserted into
// out with 2 spaces separating one item from another if
// if there are 2 or more items.
// IntSet unionWith(const IntSet& otherIntSet) const
// Pre: size() + (otherIntSet.subtract(*this)).size() <= MAX_SIZE
// Post: An IntSet representing the union of the invoking IntSet
// and otherIntSet is returned.
// Note: Equivalently (see postcondition of add), the IntSet
// returned is one that initially is an exact copy of the
// invoking IntSet but subsequently has all elements of
// otherIntSet added.
// IntSet intersect(const IntSet& otherIntSet) const
// Pre: (none)
// Post: An IntSet representing the intersection of the invoking
// IntSet and otherIntSet is returned.
// Note: Equivalently (see postcondition of remove), the IntSet
// returned is one that initially is an exact copy of the
// invoking IntSet but subsequently has all of its elements
// that are not also elements of otherIntSet removed.
// IntSet subtract(const IntSet& otherIntSet) const
// Pre: (none)
// Post: An IntSet representing the difference between the invoking
// IntSet and otherIntSet is returned.
// Note: Equivalently (see postcondition of remove), the IntSet
// returned is one that initially is an exact copy of the
// invoking IntSet but subsequently has all elements of
// otherIntSet removed.
//
// MODIFICATION MEMBER FUNCTIONS (MUTATORS)
// void reset()
// Pre: (none)
// Post: The invoking IntSet is reset to become an empty IntSet
// (i.e., one containing no relevant elements).
// bool add(int anInt)
// Pre: contains(anInt) ? size() <= MAX_SIZE : size() < MAX_SIZE
// Post: If contains(anInt) returns false, anInt has been
// added to the invoking IntSet as a new element and
// true is returned, otherwise the invoking IntSet is
// unchanged and false is returned.
// bool remove(int anInt)
// Pre: (none)
// Post: If contains(anInt) returns true, anInt has been
// removed from the invoking IntSet and true is
// returned, otherwise the invoking IntSet is unchanged
// and false is returned.
//
// NON-MEMBER FUNCTIONS
// bool equal(const IntSet& is1, const IntSet& is2)
// Pre: (none)
// Post: True is returned if is1 and is2 have the same elements,
// otherwise false is returned; for e.g.: {1,2,3}, {1,3,2},
// {2,1,3}, {2,3,1}, {3,1,2}, and {3,2,1} are all equal.
// Note: By definition, two empty IntSet's are equal.
#ifndef INT_SET_H
#define INT_SET_H
#include <iostream>
class IntSet
{
public:
static const int MAX_SIZE = 10;
IntSet();
int size() const;
bool isEmpty() const;
bool contains(int anInt) const;
bool isSubsetOf(const IntSet& otherIntSet) const;
void DumpData(std::ostream& out) const;
IntSet unionWith(const IntSet& otherIntSet) const;
IntSet intersect(const IntSet& otherIntSet) const;
IntSet subtract(const IntSet& otherIntSet) const;
void reset();
bool add(int anInt);
bool remove(int anInt);
private:
int data[MAX_SIZE];
int used;
};
bool equal(const IntSet& is1, const IntSet& is2);
#endif
![#include <iostream>
#include <cassert>
using namespace std;
IntSet :: IntSet ()
{
cout << "IntSet () is not implemented yet..." " << endl;
}
int IntSet::size () const
{
}
bool IntSet::isEmpty() const
{
}
}
bool IntSet:: contains (int anInt) const
{
cout << "size() is not implemented yet..." << endl;
return 0; // dummy value returned
}
cout << "isEmpty() is not implemented yet..." << endl;
return false; // dummy value returned
bool IntSet::isSubsetof (const IntSet& otherIntSet) const
{
}
cout << "contains () is not implemented yet...! " << endl;
return 0; // dummy value returned
}
void IntSet:: DumpData (ostream& out) const
{ // already implemented ... DON'T change anything
if (used > 0)
{
cout << "isSubset of () is not implemented yet..." << endl;
return false; // dummy value returned
}
out << data [0];
for (int i = 1; i < used; ++i)
out << " " <<data[i];
IntSet IntSet: :unionWith (const IntSet& otherIntSet) const
{
cout << "unionWith() is not implemented yet..." << endl;
return IntSet (); // dummy IntSet object returned](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F9e6fa127-a003-469d-9a51-b1d4610918ed%2F1221069d-ac0a-490d-b23b-0a39836b4f58%2Fhnmpm2i_processed.png&w=3840&q=75)
![IntSet IntSet::intersect (const IntSet& otherIntSet) const
{
IntSet IntSet::subtract (const IntSet& otherIntSet) const
{
}
cout << "intersect () is not implemented yet..." << endl;
return IntSet (); // dummy IntSet object returned
void IntSet: :reset()
{
cout << "reset() is not implemented yet..." << endl;
}
cout << "subtract () is not implemented yet...' << endl;
return IntSet (); // dummy IntSet object returned
bool IntSet::add (int anInt)
{
}
cout << "add () is not implemented yet..." << endl;
return false; // dummy value returned
bool IntSet: : remove(int anInt)
{
cout << "remove() is not implemented yet..." << endl;
return false; // dummy value returned
bool equal (const IntSet& isl, const IntSet & is2)
{
cout << "equal () is not implemented yet..." << endl;
return false; // dummy value returned](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F9e6fa127-a003-469d-9a51-b1d4610918ed%2F1221069d-ac0a-490d-b23b-0a39836b4f58%2Fbaz98u_processed.png&w=3840&q=75)
![](/static/compass_v2/shared-icons/check-mark.png)
Step by step
Solved in 3 steps
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)