Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2015, 00:15   #1
aaaallleex1996
Новичок
Джуниор
 
Регистрация: 13.11.2014
Сообщений: 2
По умолчанию Множество с неповторяющимися элементами - C++

При вводе нескольких одинаковых чисел, множество должно принимать только одно это число.



}
Код:
#include<iostream>
 
using namespace std;
 
class Set
{
 
public:
    int aray[10];
    int num = 0;
 
    Set()
    {
 
    }
 
    Set(int x,int y, int z)
    {
        aray[0] = x;
        aray[1] = y;
        aray[2] = z;
        num = 3;
    }
 
    ~Set()
    {
 
    }
 
    friend void operator >> (istream& input, Set& x)
    {
        for (int i = 0; i < 7; i++)
        {
            input >> x.aray[i];
        }
        x.num = 7;
    }
 
    friend ostream& operator << (ostream& output, Set& x)
    {
        for (int i = 0; i < x.num; i++)
        {
            output << x.aray[i] << " ";
        }
        return output;
    }
 
    friend Set operator * (Set& x, Set& y)//пересечение
    {
        Set h;
 
        for (int i = 0; i < 7; i++)
        {
            for (int j = 0; j < 7; j++)
            {
                if (x.aray[i] == y.aray[j])
                {
                    h.aray[h.num] = x.aray[i];
                    h.num++;
                }
            }
        }
        return h;
    }
 
    friend Set operator + (Set& x, int k)//добавление
    {
        if (x.num < 10)
        {
            x.aray[x.num++] = k;
        }
        return x;
    }
 
    friend Set operator - (Set& x, int u)//удаление
    {
        for (int i = 0; i<x.num; i++)
        {
            for (int j = i + 1; j<x.num; j++)
            {
                if (x.aray[j] == u)
                {
                    x.aray[j] = x.aray[x.num - 1];
                    x.num--;
                }
            }
        }
        return x;
    }
 
    
 
    friend bool operator > (const Set& x, const Set& y)
    {
        bool f = 1;
        bool t = 0;
 
        for (int i = 0; i < y.num; i++)
        {
            for (int j = 0; j < x.num; j++)
            {
                if (x.aray[j] == y.aray[i])
                {
                    t = 1;
                }
            }
            if (t == 0)
            {
                f = 0;
            }
            else
            {
                t = 0;
            }
        }
        return f;
    }
 
    friend bool operator != (const Set& x, const Set& y)
    {
        bool f = 1;
        bool t = 0;
 
        for (int i = 0; i < 7; i++)
        {
            if (x.aray[i] != y.aray[i])
            {
                f = 0;
            }
        }
        return f;
    }
};
void main()
{
 
    Set a;
 
    Set b;
 
    Set c(1, 2, 3);
 
    cout << "Enter the set A: " << endl;
    cin >> a;
 
    cout << "Enter the set B: " << endl;
    cin >> b;
    cout << endl;
 
    cout << "Set A: " << a << endl;
 
    cout << "Set B: " << b << endl;
 
    cout << "A!=B: " << (a!=b) << endl;
 
    cout << "A*b: " << (a*b) << endl;
 
    cout << "A+5: " << (a+5) << endl;
 
    cout << "B-1: " << (b -1) << endl;
 
    cout << "Set C: " << c << endl;
 
    cout << "A>C: " << (a>c) << endl;
aaaallleex1996 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Множество с элементами Ksenyars Паскаль, Turbo Pascal, PascalABC.NET 1 11.04.2014 21:40
Множество, содержащее натуральные числа из первой сотни. Сформировать новое множество из простых чисел первого множества Aimet Паскаль, Turbo Pascal, PascalABC.NET 3 16.06.2011 20:50
Дано множество А, напечатать четные элементы, входящие в другое множество (Паскаль) Марийка92 Помощь студентам 4 03.04.2011 17:38
матрица с неповторяющимися числами aiktz Помощь студентам 5 02.11.2010 09:21
Заполнение массива неповторяющимися числами anybkarnak Общие вопросы C/C++ 8 30.11.2009 22:31