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

Написать шаблон функции, которая будет дублировать в массиве уникальные элементы

06.04.2020, 09:25. Показов 422. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
1) Написать шаблон функции, которая будет дублировать в массиве уникальные элементы, и в конце работы вернёт новую длину массива. Количество элементов вводит пользователь. Сами элементы также вводит пользователь. Протестировать функцию на 3 различных массивах. Распечатывать состояние массива до и после вызова функции.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2020, 09:25
Ответы с готовыми решениями:

Написать функцию-шаблон, удваивающую элементы в массиве
Как написать функцию-шаблон, удваивающую элементы в массиве? Аргументами функции должны быть имя и...

Шаблон функции, которая осуществляет поиск максимального элемента в массиве
Напишите шаблон функции, которая осуществляет поиск максимального элемента в массиве. Функция...

Написать функцию-шаблон, меняющую в одномерном массиве соседние элементы
Написать функцию-шаблон, меняющую в одномерном массиве соседние элементы (поменять элементы с...

Подпрограмма: Напишите шаблон функции, которая осуществляет поиск максимального элемента в массиве.
Напишите шаблон функции, которая осуществляет поиск максимального элемента в массиве. Функция...

1
1505 / 968 / 812
Регистрация: 30.04.2016
Сообщений: 3,334
09.04.2020, 23:08 2
arutyunov, здравствуйте! Вот решение:

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
#include <iostream>
#include <set>
 
    using namespace std;
 
template <typename T>
    void add(T* arr, int j, T key, int n) {
        for (int i = n; i >= j; i--) {
            arr[i] = arr[i-1];
        }
        arr[j] = key;
    }
 
template <typename T>
    T* f(T* a, int n) {
        int k, size;
        set<T> s;
        for (int i = 0; i < n; i++) {
            k = 0;
            for (int j = 0; j < n; j++) {
                if (a[i] == a[j])
                    k++;
            }
            if (k == 1) {
                s.insert(a[i]);
            }
        }
        size = s.size();
        T* b = new T[n + size];
        for (int i = 0; i < n; i++) {
            b[i] = a[i];
        }
        k = 0;
        for (int i = n - 1; i >= 0; i--) {
            if (s.find(b[i]) != s.end()) {
                add(b, i, b[i], n + k);
                k++;
            }
        }
        cout << "Before:\n";
        for (int i = 0; i < n; i++) {
            cout << a[i] << " ";
        }
        cout << "\nAfter:\n";
        for (int i = 0; i < n + size; i++) {
            cout << b[i] << " ";
        }
        delete[] b;
        cout << "\nThe new array size: " << n + size << "\n";
    }
 
int main() {
    int n;
    //1. Целочисленный массив
    cout << "1. Enter a size:\n";
    cout << "n = ";
    cin >> n;
    int* a = new int[n];
    cout << "Enter an integer array:\n";
    for (int i = 0; i < n; i++) {
        cin >> a[i];
    }
    cout << "\nOutput of the program:\n";
    f(a, n);
    //2. Вещественный массив
    cout << "\n2. Enter a size:\n";
    cout << "n = ";
    cin >> n;
    double* b = new double[n];
    cout << "Enter a double array:\n";
    for (int i = 0; i < n; i++) {
        cin >> b[i];
    }
    cout << "\nOutput of the program:\n";
    f(b, n);
    //3. Символьный массив
    cout << "\n3. Enter a size:\n";
    cout << "n = ";
    cin >> n;
    char* c = new char[n];
    cout << "Enter a char array:\n";
    for (int i = 0; i < n; i++) {
        cin >> c[i];
    }
    cout << "\nOutput of the program:\n";
    f(c, n);
    delete[] a;
    delete[] b;
    delete[] c;
    return 0;
}
0
09.04.2020, 23:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2020, 23:08
Помогаю со студенческими работами здесь

Написать программу, которая будет изменять элементы массива
Дан целочисленный массив из 25 элементов. Если элемент чётный, то прибавить к нему первый, если...

Написать функцию, которая в одномерном массиве заменяет элементы кратные некоторому числу на нулевые элементы
Знатоки, помогите написать программы по информатике. У меня полный завал по этой теме, а через...

Написать шаблон функции которая меняет местами значения двух переменных
Написать шаблон функции которая меняет местами значения двух переменных int и double Прошу помочь.

Написать шаблон функции, выполняющей поиск минимального элемента в целочисленном массиве
Помогите пожалуйста с программой. Заранее огромное спасибо!!! Написать шаблон функции,...

Написать процедуру, которая будет удалять повторяющиеся элементы списка
Помогите написать процедуру(в коде она Delete2) которая будет удалять повторяющиеся элементы...

Массив: Написать и протестировать шаблон функции, которая вычисляет среднее арифметичиское элементов массива
2. Написать и протестировать шаблон функции, которая вычисляет среднее арифметичиское елементов...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru