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

Вылетает окошко. (Скриншот прилагается) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ссылки на файл http://www.cyberforum.ru/cpp-beginners/thread556540.html
Здравствуйте! Есть скажем простое бинарное дерево с лишь одной функцией - добавлять. Напишите пожалуйста простой пример программы, который добавляет l_child и r_child в отдельный текстовый файл....
C++ Нужно написать программу на си++ по теме УКАЗАТЕЛИ И СПИСКИ Вот задача, помогите решить. Написать функцию для удаления произвольного элемента двусвязного списка. Функция должна принимать только указатель на удаляемый элемент. Напишите полностью если что... http://www.cyberforum.ru/cpp-beginners/thread556521.html
Написать программу по ходу работы по теме файлы. на си++ C++
Помогите написать программу по теме файлы. Дан ход работы и по нему написать программу. Вот ход работы: Ход работы 1. Написать программу, читающую значения переменных из файла, и выводящую их на...
Написать пошагово программу на си++ C++
Помогите написать программу если задан ход работы. Вот ход работы: 1. Объявить структуру данных и две переменных такого типа. Записать значения в переменные, вывести их на экран. 2. Объявить...
C++ Многофайловый программы, переопредиление множественная инициализация http://www.cyberforum.ru/cpp-beginners/thread556497.html
Всем привет при написании многофайловых программ столкнулся с такой проблемой как переопредиление. Я посторался кратко съэмитировать проблему. //class.h #include<iostream> #include<string> ...
C++ Dec-C++ Allegro Здравствуйте! Подскажите пожалуйста как настроить компилятор, чтобы он работал в режиме аллегро? подробнее

Показать сообщение отдельно
b0n4b
2 / 2 / 0
Регистрация: 16.11.2011
Сообщений: 100
25.04.2012, 22:54  [ТС]
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
#include <iostream>
using namespace std;
 
const int CHUNK_SIZE=10;
class set
{
protected:
    int *data;
    int size;
    int bufsize;
    int name;
 
public:
    const int getsize()
    {
        return size;
    }
    const int buffersize()
    {
        return bufsize;
    }
    set(int n=0):size(0), bufsize(CHUNK_SIZE)
    {
        data=(new int[CHUNK_SIZE]);
        name=n;
    }
    set(set& copy): size(copy.size), bufsize(copy.bufsize)
    {
        data=new int[bufsize];
        for(int i=0; i<size; i++)
            data[i]=copy.data[i];
    };
    set& operator = (set& copy)
    {
        int i;
        if (this!=&copy)
        {
            delete[] data;
            size=copy.size;
            bufsize=copy.bufsize;
            data=new int[bufsize];
            for(i=0; i<size; i++)
                data[i]=copy.data[i];
        }
        return *this;
    };
 
    void add(int value)
    {
    int i;
    int* d;
    bool searching=true;
    for(i=0; (i<size)&&(searching); i++)
        if (data[i]==value) searching=false;
            if (searching)
            {
                data[size]=value;
                size++;
                if(size==bufsize)
                {
                    bufsize+=CHUNK_SIZE;
                    d=new int[bufsize];
                    for(i=0; i<size; i++)
                        d[i]=data[i];
                        delete[] data;
                        data=d;
                }     
            }
    };
 
    bool remove(int value)
    {
        int i;
        bool searching=true;
        for (i=0; (i<size)&&(searching); i++)   
            if (data[i]==value) 
                searching=false;
            if (!searching)
            {
                for (i=i-1; i<size-1; i++)
                data[i]=data[i+1];
                size--;
                return true;
            }
            return false;
    };
    int operator[] (int id)
    {
        if ((id<size)&&(id>=0)) 
            return data[id]; 
        else 
        {
            std::cerr<<"Error index "; return 0;
        }
    }
    
    friend set operator + (set, set);
    friend set operator - (set, set);
 
    ~set()
    {
        delete[] data;
    };
 
    set operator + (set a, set b)
    {
        set temp=a;
        temp.name=10*a.name;
        int i;
        for (i=0; i<b.size; i++)
            temp.add(b.data[i]);
        return temp;
    }
 
    set operator - (set a, set b)
    {
        set temp=a;
        int i;
        for (i=0; i<b.size; i++)
            temp.remove(b.data[i]);
        return temp;
    }
 
    set operator ^ (set a, set b)
    {
        set temp;
        bool searching;
        int i, j;
        for (j=0; j<a.size; j++)
        {
            searching=true;
            for (i=0; (i<b.size)&&(searching); i++)
                if (a[j]==b[i]){temp.add(a.data[j]); 
                    searching=false;
        }
        return temp;
    }
 
    bool set::includes(int value)
    {
        for (int i=0; i<size; i++) 
            if (data[i]==value) 
                return true;
        return false;
    }
 
};
 
 
int main()
{
    setlocale (LC_ALL, "Russian");
    set a(1);
    set b(2);
    set c(3);
    a.add(1);
    a.add(2);
    a.add(3);
    a.add(4);
    b.add(3);
    b.add(4);
    b.add(5);
    b.add(6);
    c=a+b;
    for (int i=0; i<c.getsize(); i++) 
    cout<<c[i]<< " ";
    cout <<"- Объединение\n";
    c=a-b;
    for (int i=0; i<c.getsize(); i++) 
    cout<<c[i]<< " ";
    cout <<"- А-В\n";
    c=b-a;
    for (int i=0; i<c.getsize(); i++) 
    cout<<c[i]<< " ";
    cout <<"- В-А\n";
    cout << set a;
    for (int i=0; i<a.getsize(); i++)
        cout<<a[i]<<" ";
    cout << "- Mn A";
        for (int i=0; i<a.getsize(); i++)
        cout<<a[i]<<" ";
    cout << "- Mn B";
    return 0;
}
Выдаёт 7 ошибок
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru