Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблон функции для поиска произведения всех элементов одномерного массива Есть задание: /* Создать функцию-шаблон. Используя эту функцию, проверить её для разных типов параметров (int, double, float). Функция шаблон для нахождения произведения всех элементов одномерного массива. */ #include <iostream> #include <ctime> https://www.cyberforum.ru/ cpp-beginners/ thread1612238.html Создать ссылки на массивы и поменять их местами C++
Привет всем. Имеется программа матрица Якоби. Написана так что происходит расчет по старому массиву, значения записываются в новый и далее сравнение массивов. Если условие не прошло то новый копируется в старый и происходит расчет снова по той же схеме. Вобщем нужно по замечанию преподавателя изменить "заводите две ссылки -- на текущий и на следующий массив. после окончания цикла меняем местами....
C++ Класс «Номер телефона», проблема с парой функций Есть задание (ниже). Я сделал всё из обоих пунктов, но функции Out_All ShowSameCode ShowSameType Find не работают . Никак не могу понять где и с чем я напортачил (есть подозрение что либо с массивами, либо с обращением к полям класса). Помогите пожалуйста. Задание 1. Создайте класс «Номер телефона». - Данные класса - код оператора, номер абонента и тип номера (международный, междугородный,... https://www.cyberforum.ru/ cpp-beginners/ thread1612224.html C++ Найти значения переменных https://www.cyberforum.ru/ cpp-beginners/ thread1612217.html
Всем, доброго времени суток! помогите пожалуйста вычислить значения переменных: при условии: char s = 'x', t ='d'; int a = 12, b = 6, c = 7, d = 8, e = 3; float x = 1, *y, z = 9.9; a = a << (b/4); // a =
Считывание и парсинг данных с текстового файла C++
Как правильно считать такую строку с етого файла? 3 circle 3.0 3.0 5.0 square 0.0 0.0 0.0 4.0 4.0 4.0 4.0 0.0 triangle 3.0 3.0 0.0 0.0 0.0 3.0 так что первое ето количество елементов for(int i=0;i<n;i++) { ifs >> q; if (q == "circle")
C++ Найти значение выражения. Разработать функцию f(n,x), которая для заданного натурального числа n и вещественного х находит значение выражения x^n/n. Вычислить с помощью данного метода значение выражения x^2/2+x^4/4+x^6/6 .c++ https://www.cyberforum.ru/ cpp-beginners/ thread1612194.html
C++ Чтение из файла в массив int Есть файл с числами(числа записаны через пробел) Количество чисел неизвестно Примерно такого содержания 300 -973 1022 1333 https://www.cyberforum.ru/ cpp-beginners/ thread1612186.html C++ Предупреждающее окно - strcpy
Добрый вечер! Подскажите, пожалуйста, как справиться с данной ошибкой при компиляции - строка 28. Error 1 error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. Использование #define _CRT_SECURE_NO_WARNINGS не помогает // STROKA.CPP - файл с определением класса "символьная строка" #include...
C++ Дан кольцевой список. Подсчитать количество элементов списка, у которых есть равный сосед https://www.cyberforum.ru/ cpp-beginners/ thread1612147.html
После завершения работы со списком освободите занимаемую им динамическую память. Помогите с написанием программы, не знаю даже как начать..
C++ Определить состоят ли два заданных линейных массива из одних и тех же элементов Даны дыа линейных массива. Состоят ли они из одних и тех же элементов? https://www.cyberforum.ru/ cpp-beginners/ thread1612142.html
Проверить, все ли элементы первого массива присутствуют во втором C++
Даны два линейных массива. Все ли элементы первого массива присутствуют во втором?
C++ Как правильно зациклить программу для фильтрации ввода? Доброго времени суток! Хотелось бы узнать как вернее всего зациклить программу, если условие выполняться? void func(int value) { cout << "Введите число от 0 до 99" << endl; if (value < 0 || value > 99) } Заранее спасибо https://www.cyberforum.ru/ cpp-beginners/ thread1612132.html
838 / 641 / 940
Регистрация: 26.06.2015
Сообщений: 1,409
13.12.2015, 23:03 0

В списке L из каждой группы подряд идущих элементов с равными значениями оставить только один - C++ - Ответ 8484314

13.12.2015, 23:03. Показов 5954. Ответов 1
Метки (Все метки)

Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
#include <iostream>
 
struct slist {
    int    val;
    slist* next;
};
void slist_remrep(slist*& lst);
void slist_copy(slist*& lst, const int* fa, const int* la);
void slist_clear(slist* lst);
 
int main(void){
    slist* L = NULL;
 
    int a[] = {0,0,0,0,1,1,2,2,2,3,4,4,4,4,5,5,6,7,7,7}; 
    slist_copy(L, a, a + sizeof(a)/sizeof(a[0]));
    
    slist_remrep(L);
    for(const slist* p = L; p != NULL; p = p->next)
        std::cout << p->val << ' ';
    std::cout << std::endl;
 
    slist_clear(L);
    return 0;
}
 
//удаление подряд идущих одинаковых значений
void slist_remrep(slist*& lst){
    slist* t, *i, *j, *p = lst;
    while(p != NULL){
        i = p->next;
        while((i != NULL) && (i->val == p->val))
            i = i->next;
 
        if(i != p->next){
            j = p->next;
            while(j != i){
                t = j;
                j = j->next;
                delete t;
            }
            p = p->next = i;
            continue;
        }
        p = p->next;
    }
}
 
//копирование массива
void slist_copy(slist*& lst, const int* fa, const int* la){
    slist* p, *t = NULL;
    lst = NULL;
    while(fa != la){
        p = new (std::nothrow) slist();
        if(p == NULL)
            break;
        p->val  = *fa++;
        p->next = NULL;
        if(lst == NULL)
            lst = t = p;
        else {
            t->next = p;
            t = p;
        }
    }
}
 
//удаление всех
void slist_clear(slist* lst){
    slist* t;
    while(lst != NULL){
        t   = lst;
        lst = lst->next;
        delete t;
    }
}
Пример работы кода

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

В списке L из каждой группы идущих подряд равных элементов оставить только один
опишите программу которая в списке L из каждой группы идущих подряд равных элементов оставляет...

В списке L из каждой группы подряд идущих равных элементов оставить только один элемент
В списке L из каждой группы подряд идущих равных элементов оставить только один элемент Например,...

Из каждой группы подряд идущих элементов оставить только один
Дан список строк. Написать подпрограмму, которая из каждой группы подряд идущих элементов оставляет...

Из каждой группы подряд идущих элементов оставить только один
Дан список строк. Написать подпрограмму, которая из каждой группы подряд идущих элементов оставляет...

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

Из каждой группы подряд идущих одинаковых элементов оставить только один
Составить программу, которая в списке L из каждой группы подряд идущих одинаковых элементов...

В списке L из каждой группы подряд идущих элементов оставляет только один
составить программу, которая в списке L из каждой группы подряд идущих элементов оставляет только...

В списке L с каждой группы подряд равных элементов оставить только один элемент
Опишите программу , которая в списке L с каждой группы подряд равных элементов оставляет только...

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

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