Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Циклические алгоритмы, найти сумму ряда добрый день всем форумчанам. задали задание написать программу на с++. пожалуйста, помогите. https://www.cyberforum.ru/ cpp-beginners/ thread1191698.html C++ Задача "Заправочная станция"
На заправочной станции для каждого автомата известно количество топлива каждого вида (А76, А93, А95, ДТ) и количество обслуженных машин в каждый из дней недели. Вычислите общий объем топлива, проданный в указанный период недели. В какой день недели было обслужено больше всего машин? Из какого автомата было продано наибольшее количество топлива? Какой вид топлива пользуется наибольшим спросом?...
C++ Превращение заданного связного графа в несвязный Найти минимальное (по количеству ребер) подмножество ребер, удаление которых превращает заданный связный граф в несвязный. Проверка_на_связность(N) { for(каждая вершина ) Mark=белый; Mark=серый; в_очередь(q,0); while(очередь не пуста) { https://www.cyberforum.ru/ cpp-beginners/ thread1191692.html C++ Fscanf как сделать чтобы он считывал не первый символ, а последующие в каждой строке? fscanf как сделать чтобы он считывал не первый символ, а последующие в каждой строке? https://www.cyberforum.ru/ cpp-beginners/ thread1191690.html
C++ Структура "Рабочий". Сортировка
Описать структуру с именем WORKER, содержащую следующие поля: • фамилия и инициалы работника; • название занимаемой должности; • год поступления на работу. сортировка по году поступления на работу #include<iostream>
C++ Проверка на точку в строке https://www.cyberforum.ru/ cpp-beginners/ thread1191673.html
Здравствуйте! Подскажите, водятся числа, проверяется на числа, а также надо разрешить чтоб была точка, только не в начале!!! вот моя проверка сейчас for (int i3=0;i3<strlen(val3);i3++) { if (val3<'0' || val3>'9') { valid3=0; break; } valid3=1;
C++ Сбалансированное дерево Ребят, может есть у кого код сбалансированного дерева с подробными комментариями, чтобы разобраться? выложите пож-та. спасайте.. https://www.cyberforum.ru/ cpp-beginners/ thread1191656.html C++ Разбор кода: fscanf и форматная строка
Добрый день! Необходимо разобраться в коде, в нем есть такие строки: h = fscanf(baza, "%*s %d", &kod1); h = fscanf(baza, "%*c %d %*c %d %*c %d", &t.tm_mday, &t.tm_mon, &t.tm_year); j = fscanf(baza, "%*s %d", &min); Что означает * перед "s" и "с"? Зачем там нужны указатели? Строки в считываемом файле (baza) имеют следующий формат:
C++ Подскажите пожалуйста в чем ошибка?(С++,структуры,стек) Подскажите пожалуйста, в чем ошибка При считывании из файла единственной записи 5группа "Anokhin Viktor petrovich 4 5 3 https://www.cyberforum.ru/ cpp-beginners/ thread1191630.html C++ Класс TGoods, создающий тип – товар https://www.cyberforum.ru/ cpp-beginners/ thread1191611.html
Задание вот: Объявите класс TGoods, создающий тип – товар. Элементы – данные класса – наименование товара, год производства. Предусмотрите конструкторы класса: по умолчанию; получающий параметры; получающий параметр –ссылку на класс TGoods Напишите функции – методы класса: для ввода – вывода данных о товаре; определения, относится ли год производства товара к какому – либо, значение...
C++ Структура "Студент"
Помогите пожалуйста разобраться в программе Тест. // test.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <math.h> #include <windows.h> #include <cstdio>
C++ Разделение классовой функции из заголовка в .h + .cpp Пытаюсь разобрать заголовок на IAI.h + IAI.cpp столкнулся с функцией которую тупо не знаю как разбить правильно. Помогитепожа! :D friend ostream& operator<<(ostream& os, const sto& sto) { os << sto.num; return os; }если что, это функция для дружбы кастумного типа (sto) с std:cout https://www.cyberforum.ru/ cpp-beginners/ thread1191582.html
6 / 6 / 5
Регистрация: 19.10.2013
Сообщений: 359
0

Удаление элемента в списке - C++ - Ответ 6241061

28.05.2014, 21:36. Показов 728. Ответов 1
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Необходимо реализовать метод удаления элемента из списка не после определённого элемента (как сделано в коде), а по индексу этого элемента


главная:
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include "Untitled.h"
 
 
int main()
{
    setlocale(LC_ALL, "RUS");
    List l;
    Node *N1=l.create(1);
 
    Node *N2=l.ins(20,N1);
 
    Node *N4=l.ins(32,N2);
 
    Node *N3=l.ins(5,N2);
    Node *N5=l.ins(10,N4);
    l.print();
 
    cout << endl;
 
    l.remove(N1);
    l.print();
 
    l.clear();
    l.print();
 
 
    cout << " - " << l.empty() << ";" << endl << "Количество элементов - " << l.size() <<";" << endl;
 
 
    return 0;}


вот здесь вызывается функция удаления элемента после N1:
C++
1
l.remove(N1);
хедер:
Кликните здесь для просмотра всего текста
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
#ifndef LIST_H
#define LIST_H
 
#include <iostream>
 
using namespace std;
 
class Node
{
public:
    double data;
    Node *next;
    int index;
 
Node()
{
    data = 0;
    next = 0;
}
Node(double &data, Node *next = 0)
    {
        this->data = data;
        this->next = next;
    }
};
 
class List
    {
        Node* head;
        int nodes;
 
public:
List()
{
    head = 0;
    nodes = 0;
}
 
int size()
{
    return nodes;
}
 
bool empty()
{
    return nodes == 0;
}
Node *create(double value)
{
    head = new Node(value);
    nodes++;
    reindex();
    return head;
}
 
Node *ins(double value, Node *where)
{
    Node *insNode;
    insNode = new Node(value);
    insNode->next = where->next;
    where->next = insNode;
    nodes++;
    reindex();
    return insNode;
}
 
void reindex()
{
    if (nodes == 0)
    return;
    else
{
    Node *pNode = head;
    for (int i = 1; i < nodes; ++i)
{
    pNode->index = i;
    pNode = pNode->next;
}
}
}
 
void removebyindex()
{
        
}
 
void remove(Node *where)
{
    if (nodes>1 && where->next != 0)
{
    Node *temp = new Node;
    temp = where->next;
    where->next = where->next->next;
    delete temp;
    nodes--;
    reindex();
}
}
 
void clear()
{
        if (nodes == 0)
    cout << "deleted";
    Node *pNode = head;
    while (pNode->next != 0 && nodes != 1)
{
    remove(pNode);
}
//delete pNode;
    delete head;
 
    nodes--;
}
 
void print()
{
    if (nodes == 0)
    cout << endl << "Список пуст";
    else
{
    Node *pNode = head;
    for (int i = 1; i < nodes; ++i)
{
    cout << "Индекс = " << pNode->index << " Данные = " << pNode->data << " Следующий = " << pNode->next << endl;
    pNode = pNode->next;
}
}
}
 
};
 
#endif


функция удаления: (87-98 строки в хедере)
C++
1
2
3
4
5
6
7
8
9
10
11
12
void remove(Node *where)
{
    if (nodes>1 && where->next != 0)
{
    Node *temp = new Node;
    temp = where->next;
    where->next = where->next->next;
    delete temp;
    nodes--;
    reindex();
}
}


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

Удаление элемента в списке
Описать функцию, которая удаляет из списка все вхождения элемента Е, значение которого введено с...

Удаление элемента в списке
Привет, всем снова! Помогите, пожалуйста, разобраться теперь уже с удалением элемента из линейного...

Добавление и удаление элемента в списке
Ребят сделал код создания элементов списка, но не могу написать 1) код добавления элемента списка...

Удаление всех вхождений элемента Х в односвязном списке L
Доброй ночи. Ситуация HELP, ситуация SOS. Есть задача &quot;Написать программу удаление всех...

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

В программе не работает 1)удаление элемента, последнего в списке-зависает и
В программе не работает 1)удаление элемента, последнего в списке-зависает и нужна операция...

Как можно сместить ID в односвязном списке после удаление элемента
народ можете подсказать как можно сместить айди в односвязном списке послу удаление элемента, на...

Вставка элемента в заданную позицию, удаление элемента по заданной позиции, поиск заданного элемента
Добавить в класс &quot;Односвязный список&quot; следующие функции: вставка элемента в заданную позицию,...

Удаление в списке
Реализован метод удаления после какого-то элемента в спике: void remove(Node *where) { if...

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