#include <iostream.h>#include <conio.h>char firstValue = '0', lastValue = '9';const universe = 10;class setType {private: bool set [universe];public: void SetCreate(setType& S); bool IsElementOf(setType S, int E); void SetAssign(setType S, setType& T); bool SetEmpty(setType s); bool SetEqual(setType s); bool SubSetOf(setType S, setType T); void Union(setType S, setType R, setType& T); void Intersection(setType S, setType R, setType& T); void Difference(setType S, setType R, setType& T); void AddElement(setType& S, int U); void RemoveElement(setType& S, int U); void SetDisplay(setType S);};void setType::SetCreate(setType& S) { for (int i = firstValue; i <= lastValue; i++) S.set = false;}bool setType::IsElementOf(setType S, int E) { return S.set[E];}void setType::SetAssign(setType S, setType& T) { for (int i = firstValue; i <= lastValue; i++) T.set = S.set;}bool setType::SetEmpty(setType S) { for (int i = firstValue; i <= lastValue; i++) if (S.set == true) return false;}bool setType::SubSetOf(setType S, setType T) { for (int i = firstValue; i <= lastValue; i++) if (S.set && !T.set) return false;}void setType::Union(setType S, setType R, setType& T) { for (int i = firstValue; i <= lastValue; i++) T.set = R.set || S.set;}void setType::AddElement(setType& S, int U) { S.set = true;}void setType::SetDisplay(setType S) { for (int i = firstValue; i <= lastValue; i++) cout << S.set << " ";}main() { setType OddNumbers, EvenNumbers, Numbers, InLineNumbers; char ch; //Create a Set to represent Even Numbers EvenNumbers.SetCreate(EvenNumbers); EvenNumbers.AddElement(EvenNumbers, '0'); EvenNumbers.AddElement(EvenNumbers, '2'); EvenNumbers.AddElement(EvenNumbers, '4'); EvenNumbers.AddElement(EvenNumbers, '6'); EvenNumbers.AddElement(EvenNumbers, '8'); //Create a set to represent Odd Numbers OddNumbers.SetCreate(OddNumbers); OddNumbers.AddElement(OddNumbers, '1'); OddNumbers.AddElement(OddNumbers, '3'); OddNumbers.AddElement(OddNumbers, '5'); OddNumbers.AddElement(OddNumbers, '7'); OddNumbers.AddElement(OddNumbers, '9'); //Create a set of Even and Odd Numbers Numbers.Union(OddNumbers, EvenNumbers, Numbers); Numbers.SetDisplay(Numbers); cout << endl << endl; cout << "\n"; //Create a set InLineNumbers which will be used to store any Numbers that we find in the //line of text InLineNumbers. SetCreate(InLineNumbers); while (ch != '0') { cin >> ch; if (InLineNumbers.IsElementOf(Numbers, ch)) InLineNumbers.AddElement(InLineNumbers, ch); } //Display the Set InLineNumbers that appeared in the line InLineNumbers.SetDisplay(InLineNumbers);}