Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 21.06.2020
Сообщений: 23

Односвязный список: вернуть адрес последней замены

06.12.2020, 16:57. Показов 1236. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не понимаю как выполнить следующее. Нужно сделать функцию у односвязного списка, которая возвращала бы адрес последней замены
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
struct list
{
    int field; // поле данных
    struct list* ptr; // указатель на следующий элемент
};
 
struct list* init(int a) // а- значение первого узла
{
    struct list* lst;
    // выделение памяти под корень списка
    lst = (struct list*)malloc(sizeof(struct list));
    lst->field = a;
    lst->ptr = NULL; // это последний узел списка
    return(lst);
}
 
struct list* change(list* lst) {
    struct list* p;
    p = lst;
    
    while (p->ptr != NULL) {
        if (p->field < 0) {
            p->field = abs(p->field);
        }
        p = p->ptr;
    }
 
    return (p);
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.12.2020, 16:57
Ответы с готовыми решениями:

Как вернуть свой ip адрес после замены с помощью программы Proxy switcher ?
Час добрый!Проблема-поменял IP адрес с помощью программы Proxy switcher.Испужался чёт последствий.Решил вернуть всё наместо.Но как?Вот...

Односвязный список. Заменить все единицы на 4 двойки и односвязный список
написать программу которая заменяет все единицы на 4 двойки и односвязный список.

Сформировать список из 10 книг, используя динамическую структуру данных односвязный список
друзья спасайте Сформировать список из 10 книг, используя динамическую структуру данных односвязный список С++

4
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
06.12.2020, 17:20
Цитата Сообщение от Ivan1996197 Посмотреть сообщение
Не понимаю как выполнить следующее. Нужно сделать функцию у односвязного списка, которая возвращала бы адрес последней замены
Что такое "последняя замена"?
0
0 / 0 / 0
Регистрация: 21.06.2020
Сообщений: 23
06.12.2020, 17:21  [ТС]
oleg-m1973, • Заменить в списке все отрицательные значения элементов на их модуль, вернуть адрес последней замены
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
06.12.2020, 17:23
Цитата Сообщение от Ivan1996197 Посмотреть сообщение
oleg-m1973, • Заменить в списке все отрицательные значения элементов на их модуль, вернуть адрес последней замены
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct list* change(list* lst) {
    struct list* p, *last = nullptr;
    p = lst;
    
    while (p->ptr != NULL) {
        if (p->field < 0) 
        {
            last = p;
            p->field = abs(p->field);
        }
        p = p->ptr;
    }
 
    return (last);
}
0
0 / 0 / 0
Регистрация: 21.06.2020
Сообщений: 23
06.12.2020, 18:11  [ТС]
oleg-m1973, спасибо большое!

Добавлено через 23 минуты
oleg-m1973, а можете помочь еще вот с каким моментом. Нужно создать список L3 из элементов, которые входят в список L1 и не входят в список L2, вернуть длину нового списка.
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
int combain(list* first, list* second, list* third) {
    list* temp1, *temp2, *temp3 = nullptr;
    temp1 = first;
    temp2 = second;
    temp3 = third;
    int cnt = 0;
    int flag = 0;
    while (temp1->ptr != NULL) {
        while (temp2->ptr != NULL) {
            if (temp1->field == temp2->field) {
                flag = flag + 1;
 
            }
 
            temp2 = temp2->ptr;
        }
        if (flag == 0) {
            cnt = cnt + 1;
            int temp_num = temp1->field;
            temp3 = addelem(temp3, temp_num);
        }
        flag = 0;
        temp1 = temp1->ptr;
    }
    return cnt;
}
Проблема в том, что не понимаю как вернуться в начала второго списка, чтобы заново в по нему идти
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.12.2020, 18:11
Помогаю со студенческими работами здесь

Создать односвязный список, затем вывести весь список в ListBox
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; class List { public: string Element; List...

Создать класс «Квартира», в котором список комнат реализовать как односвязный список
Добрый день,написал фот такой клас по заданию:Создать класс «Квартира», в котором список комнат реализовать как односвязный список....

Составить односвязный список на основе класса, объекты которого будут формировать этот список
Задание: Составить односвязный список на основе класса, объекты которого будут формировать этот список. В описание класса должны входить...

Односвязный список: заносить в новый список элементы исходного, которые больше заданного значения
Можете пожалуйста помочь в решении проблемы не. Не могу создать функцию которая будет с созданного заранее списка заносить в новый элементы...

Составить односвязный список на основе класса, объекты которого будут формировать этот список
Видел на этом форуме программы для данной задачи, но все равно не могу понять их, необходимо что-то попроще. Составить односвязный список...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru