Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Составление блок-схемы https://www.cyberforum.ru/ cpp-beginners/ thread150419.html
Помогите пожалуйста составить блок схему к данной програмке: #include <iostream> #include <conio.h> #include <math.h> using namespace std; float sqr(float x) {
C++ Организовать функцию
Дорогие форумчане,Надо Организовать функцию определения большего из двух чисел,которы передаются в функцию по ссылке..Буду очень признателен!!!
C++ Начинающий изучать C++ (подскажите литературу) https://www.cyberforum.ru/ cpp-beginners/ thread150405.html
Здравствуйте всем, я хочу начать изучать C++, мне нужно чтоб мне посоветовали какие книжки почитать, для изучения синтаксиса языка C++ да и вообще, что-нибудь типа Фаронова для Делфи, то же самое и для C++. Сайтик специализированный где много исходников, описаний, уроков и обсуждений про этот язык (что то похожее на delphiexpert.ru только для C++), да и ещё среду для разработки порекомендуйте,...
C++ Дан символ "с" https://www.cyberforum.ru/ cpp-beginners/ thread150401.html
Дан символ "с". Вывести символ, который в кодовой таблице следует за символом "с".
C++ компилирую данный фаил с расширением *.h
компилирую данный фаил с расширением *.h выдаёт ошибку в третей стоке. не могу понять причину. а потом, после первой компиляции и сообщения об ошибке, когда пробую компилирывать ещё раз, он просто ничего не делает. даже если в коде ошибки. ничего не пишет. жми на COMPILE сколько хочешь. среда Dev C++. помогите. #ifndef _PLORG_H_ #define _PLORG_H_ class Plorg { private: string...
C++ Вычислить сумму целых частей элементов массива https://www.cyberforum.ru/ cpp-beginners/ thread150371.html
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму целых частей элементов массива, расположенных после последнего отрицательного элемента
C++ Арифметические 1)Дано натуральное число n. Отбросить в нем все цифры, стоящие правее самой правой единицы либо оставить число без изменений, если единицы в нем нет). 2) Перевести заданное число в систему римского счета. Римские цифры обозначаются следующими латинскими буквами: 1 – I, 5 – V, 10 – X, 50 – L, 100 – C, 500 – D, 1000 – M, 5000 - V , 10 000 - X , … https://www.cyberforum.ru/ cpp-beginners/ thread150370.html Расчет конечных сумм. C++
Составить программу расчета конечной суммы. Число членов суммы вводится с клавиатуры. Получить 3 значения при различных N. Результат сравнить с контрольным значением. Вычислить погрешность. Вид суммы: 1+2+3+...+n Контрольное значение: n(n + 1)/2
C++ Разложение функций в ряд Маклорена (Тейлора) https://www.cyberforum.ru/ cpp-beginners/ thread150363.html
Составить программу, вычисляющую f(x) в виде бесконечного ряда с заданной точностью ε=10в-3 (10в-6, 10в-9). Значение x вводится с клавиатуры. Проверить вычислении с помощью системной функции. Подсчитать количество итераций, потребовавшихся для получения результата с заданной точностью.
C++ Найти сумму положительных элементов столбца и строки массива, на пересечении которых находится минимальный элемент. (Turbo C++) Найти сумму положительных элементов столбца и строки массива, на пересечении которых находится минимальный элемент. https://www.cyberforum.ru/ cpp-beginners/ thread150362.html
Определить, попадает ли точка с координатами (x, y) в заштрихованную фигуру C++
Определить, попадает ли точка с координатами (x, y) в заштрихованную фигуру.
C++ Трапеция Значения параметров вводятся с клавиатуры. Предусмотреть диалог с пользователем. Предполагается, что данные корректны. В трапеции заданы стороны a, b, d и высота h. Найти сторону c и диагональ e. https://www.cyberforum.ru/ cpp-beginners/ thread150358.html
1 / 1 / 0
Регистрация: 29.01.2010
Сообщений: 25
30.06.2010, 02:44  [ТС] 0

Связанный двусторонний список - C++ - Ответ 833054

30.06.2010, 02:44. Показов 2802. Ответов 19
Метки (Все метки)

Ответ

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
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
#include <iostream>
using namespace std;
 
#ifndef MLIST_H
#define MLIST_H
//                      Class mListNode - node of my List Container class
template <class T>
class mListNode
{
public:
    mListNode();
    mListNode(const mListNode<T>&);
    ~mListNode();
    void setNext(mListNode* newNext) { next = newNext;};
    void setPrev(mListNode* newPrev) { prev = newPrev;};
    void setInfo(T* inf)             { info = inf;  };
    mListNode* getNext() const       { return next; };
    mListNode* getPrev() const       { return prev; };
    T* getInfo() const               { return info; };
    mListNode<T>& operator= (const mListNode<T>&);
protected:
    T* info;
    mListNode* prev;
    mListNode* next;
};
 
template <class T>
mListNode<T>::mListNode(const mListNode<T> & rhs)
{
    cout << "in COPY ctor of node\n";   
    info = rhs.info;
    prev = rhs.prev;
    next = rhs.next;
    cout << "exit COPY ctor of node\n";
}
template <class T>
mListNode<T>& mListNode<T>::operator =(const mListNode<T> &rhs)
{
    if (this == &rhs)
        return *this;
    delete info;
    delete prev;
    delete next;
    info = rhs.info;
    prev = rhs.prev;
    next = rhs.next;
    return *this;
}
template <class T>
mListNode<T>::mListNode():
info(0) , prev(0), next(0)
{
    //cout << "in ctor of node\n";
    //cout << "exit ctor of node\n";
}
 
template <class T>
mListNode<T>::~mListNode()
{
    cout << "info\n";
    delete info;
    info = NULL;
    cout << "prev\n";
    delete prev;
    prev = NULL;
    cout << "next\n";
    delete next;
    next = NULL;
}
 
 
//                      Class mList - my List Container
 
template <class T>
class mList
{
public:
    mList() { size = 0; head = 0;};
    mList(const mList<T>&);
    //~mList();
    void pushBack(T& inf);                      //добавляет информацию в конец списка
    void pushTop(T& inf);                       //добавляет информацию в начало списка
    mList<T>& operator=(const mList<T>&);
    T& operator[] (unsigned int num) const ;    //получение информации основываясь на номере в списке
    void clear();                               //отчистка списка
    void popFront();
    class exOutOfRange { };                     // oor exeption
protected:
    mListNode<T>* head;
    unsigned int size;
};
 
template <class T>
mList<T>::mList(const mList& rhs)
{
    head = rhs.head;
    size = rhs.size;
}
template <class T>
mList<T>& mList<T>::operator =(const mList<T> &rhs)
{
    if (this == &rhs)
        return *this;
    delete head;
    head = rhs.head;
    size = rhs.size;
}
 
template <class T>
T& mList<T>::operator[] (unsigned int num) const
{
    if (num > size - 1)
        throw exOutOfRange();
    mListNode<T>* tmp = head;
    for (unsigned int i = 0; i < num; i++)
    {
        tmp = tmp->getNext();
    }   
    T& info = *(tmp->getInfo());    
    return info;
}
 
template <class T>
void mList<T>::pushBack(T& inf)
{
    
    if (size == 0)
    {
        head = new mListNode<T>;
        head->setInfo(&inf);
        size++;
        return;
    }
    else
    {
        mListNode<T>* newNode = new mListNode<T>;
        mListNode<T>* current = head;
        mListNode<T>* next = 0;
        newNode->setInfo(&inf);
 
#define ever ;;
        for(ever)
        {
            next = current->getNext();
            if (next == NULL) //следущего нету - сюда и ставим
            {
                newNode->setPrev(current);
                newNode->setNext(NULL);
                current->setNext(newNode);
                break;
            }
            else //идем дальше
                current = next;
        }
 
    }
}
 
template <class T>
void mList<T>::pushTop(T& inf)
{
    if (head == NULL)
    {
        head = new mListNode<T>;
        head->setInfo(&inf);
        head->setPrev(NULL);
        head->setNext(NULL);
        size++;
        return;
    }
    else
    {
        mListNode<T>* newNode = new mListNode<T>;
        newNode->setInfo(&inf);
        newNode->setNext(head);
        newNode->setPrev(NULL);
        head->setPrev(newNode);
 
        head = newNode;
        size++;
    }
}
 
template <class T>
void mList<T>::clear()
{
    if (size == 0)
        return;
    while (size != 0)
    {
        popFront();
    }
 
}
template <class T>
void mList<T>::popFront()
{
    if (size == 0)
        return;
    mListNode<T>* tmp = head;
    head = head->getNext();
    delete tmp;
    size--;
    head->setPrev(NULL);
 
}
#endif
собственно почти все уже было выложенно

Добавлено через 1 час 55 минут
Убрав деструктор mListNode все прекрасно удаляется с одним но: память не освобождается. Тоесть я динамически создаю элементы, которые стандартный деструктор удалить не может. В свою же очередь мой деструктор вылетает с критической ошибкой. Застрелиться можно >.<

Вернуться к обсуждению:
Связанный двусторонний список C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.06.2010, 02:44
Готовые ответы и решения:

двусторонний список
помогите понять почему программа не работает, и как сделать чтобы она заработала #include...

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

Связанный список
ребят,нужна помощь. короче дело в том,что нужно &quot;то есть тебе нужно поменять местами ссылки друг на...

Связанный список
Всем доброго время суток, написать программу демонстрации связанного списка, где PART - (ДЕТАЛЬ)...

19
30.06.2010, 02:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.06.2010, 02:44
Помогаю со студенческими работами здесь

Связанный список
Доброе утро есть ли у кого пример Связанного списка. И чем он вообще отличаетьсяот массива кроме...

Связанный список
Не могу обратиться к методу класса Node хотя они выраженны как public: void addNode(int d); void...

Связанный список.
Компилятор ругается на строку 169 In member function `virtual Node* HeadNode::Insert(Data*)': ...

Однонаправленный связанный список
вот задание Однонаправленный связанный список Тип информационной части узла списка-char 1. ...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru