Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
noobPHP
0 / 0 / 0
Регистрация: 17.01.2014
Сообщений: 14
#1

Класс множество - C++

03.03.2014, 18:20. Просмотров 223. Ответов 0
Метки нет (Все метки)

Добрый день!

Задача:
Описать класс «множество», позволяющий выполнять основные операции — добавление
и удаление элемента, пересечение, объединение и разность множеств.
Написать программу, демонстрирующую работу с этим классом. Программа должна
содержать меню, позволяющее осуществить проверку всех методов класса.

Помогите или подскажите, как реализовать методы пересечение, объединение и разность множеств.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
class Set {
private:
    int size;           // размер массива
    int *arr;           // указатель на массив
public: 
    Set (int a[], int s) { // конструктор в который передается массив множества и его размер
        size = s;
        arr = new int[s];
        arr = a;
    }
 
    void print() { // вывод массива
        for(int i(0); i < size; i++) {
            cout << arr[i] << " ";
        }
    }
 
    void DeleteItem(int item) {  // удаление элемента из множества, вводим эл-т который нужно удалить
        for(int i(0); i < size; i++) {
            if(arr[i] == item) {
                for(int j(i); j < size; j++) {
                    arr[j] = arr[j + 1];
                }
                size--;
                i--;
            }
        }
    }
 
    int *getNewArray(int a[]) { //получение массива размером больше на 1, и в него копируется старый массив
        size++;
        int *arr = new int[size];
        for(int i(0); i < size - 1; i++) {
            arr[i] = a[i];
        }
        return arr;
    }
 
    int getMaxItem(int a[]) { //получение максимального элемента
        int *mas = a;
        int max = mas[0];
        for(int i(1); i < size; i++) {
            if(max < mas[i]) {
                max = mas[i];
            }
        }
        return max;
    }
 
    void AddItem(int item) { //добавление эл-та в множество
        *arr = *getNewArray(arr);
        int max = getMaxItem(arr);
        for(int i(0); i < size - 1; i++) {
            if(arr[i] >= item) {
                for(int j(size); j > i; j--) {
                    arr[j] = arr[j - 1];
                }
                arr[i] = item;
                break;
            }
            if(arr[i] == max) {
                for(int j(size); j > i; j--) {
                    arr[j] = arr[j - 1];
                }
                arr[i + 1] = item;
                break;
            }
        }
    }
 
};
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.03.2014, 18:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Класс множество (C++):

Класс – множество - C++
Требуется написать программу , но при запуске очень много ошибок помогите!!! Задача 3 Задачи для самостоятельного решения Общее ...

Класс Множество - C++
Описать класс множество, позволяющий выполнять основные операции, добавление и удаление элемента, пересечение, объединение и разность.

Класс «Множество» - C++
Всем привет) Сижу над этой задачей 2 день - это объектно-ориентированное программирование. Помогите пожалуйста с решением :wall: ...

Класс множество - C++
Нужно написать класс множество с конструкторами, деструкторами, операторами. Так вот возник вопрос...как понимать тип данных...

Класс, реализующий множество - C++
Создать класс реализующий множество целых чисел. Доп. условия: Элементы множества хранить в числовом массиве, операции объединения и...

Класс множество строк - C++
Здравствуйте, мне нужно написать класс множество строк. Как будет выглядеть класс? class SetString{ char *str; int...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.03.2014, 18:20
Привет! Вот еще темы с ответами:

Описать класс “множество” - C++
Описать класс “множество”, позволяющий выполнять основные операции — добавление и удаление элемента, пересечение, объединение и разность...

Описать класс множество - C++
Описать класс множество с полями элементы множества и количество элементов, позволяющий добавлять и удалять элементы из множества, вывод...

Реализовать класс множество - C++
Извините, искал везде, но находил только разобщенные куски кода, если вас не затруднит, то скиньте код где это реализовано. Множество: ...

Создать класс описывающий множество - C++
Создать класс описывающий множество и производный от него с реализацией функций обьединения, пересичения, дополнения, деления и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru