Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- class DynamicIntegerSet
- {
- public:
- DynamicIntegerSet()
- {
- currentSize = 0;
- maxSize = 4;
- dynamicArray = new int[maxSize];
- }
- ~DynamicIntegerSet() {
- delete[] dynamicArray;
- }
- int Add(const int x);
- void Delete(const int x);
- bool IsMember(const int x) const;
- bool IsEmpty(const int x) const;
- int Count() const;
- void Print() const;
- private:
- int* dynamicArray;
- int currentSize;
- int maxSize;
- int counter;
- };
- int DynamicIntegerSet::Add(const int x)
- {
- if (currentSize == maxSize)
- {
- maxSize = maxSize * 2;
- int* tempArray = new int[maxSize];
- for (int i = 0; i < currentSize; i++)
- {
- tempArray[i] = dynamicArray[i];
- }
- tempArray[currentSize] = x;
- currentSize++;
- dynamicArray = tempArray;
- counter++;
- }
- else
- {
- dynamicArray[currentSize] = x;
- currentSize++;
- counter++;
- }
- return currentSize;
- }
- void DynamicIntegerSet::Delete(const int x)
- {
- for (int i = 0; i < currentSize; i++)
- {
- if (dynamicArray[i] == x)
- {
- for (; i < currentSize - 1; i++)
- {
- dynamicArray[i] = dynamicArray[i + 1];
- }
- dynamicArray[currentSize - 1] = 0;
- currentSize = currentSize - 1;
- counter--;
- cout << "Polozka byla umazana." << endl;
- }
- }
- }
- bool DynamicIntegerSet::IsMember(const int x) const {
- for (int i = 0; i < currentSize; i++)
- {
- if (dynamicArray[i] == x)
- {
- cout << "Polozka " << x << " je soucasti mnoziny." << endl;
- return true;
- }
- }
- cout << "Polozka " << x << " neni soucasti mnoziny." << endl;
- return false;
- };
- bool DynamicIntegerSet::IsEmpty(const int x) const
- {
- if (counter == 0)
- {
- return true;
- }
- else
- {
- return false;
- }
- };
- int DynamicIntegerSet::Count() const {
- return counter;
- };
- void DynamicIntegerSet::Print() const {
- for (int i = 0; i < currentSize; i++)
- {
- cout << dynamicArray[i] << endl;
- }
- };
- int main()
- {
- DynamicIntegerSet intDynArray;
- int a = 9;
- int b = 16;
- int c = 26;
- int d = 5;
- intDynArray.Add(a);
- intDynArray.Add(b);
- intDynArray.Add(c);
- intDynArray.Add(d);
- intDynArray.Add(37);
- intDynArray.Add(27);
- intDynArray.Add(28);
- intDynArray.Add(18);
- intDynArray.Add(4);
- intDynArray.Add(3);
- intDynArray.Add(20);
- intDynArray.Add(24);
- intDynArray.Print();
- cout << "-----------------------------------" << endl;
- intDynArray.IsMember(100);
- intDynArray.IsMember(26);
- cout << intDynArray.Count() << endl;
- intDynArray.Delete(26);
- intDynArray.Delete(24);
- intDynArray.Delete(3);
- intDynArray.Delete(9);
- intDynArray.Delete(39);
- intDynArray.Delete(18);
- intDynArray.Print();
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment