0 / 0 / 0
Регистрация: 24.11.2021
Сообщений: 8
1

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

20.12.2022, 16:16. Показов 280. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пользователь задает натуральные числа n и m, заполняет два
массива int с клавиатуры Создать массив указателей только на те элементы первого массива, которые содержатся и во втором. Отсортировать его по возрастанию адресуемых значений. Вывести все значения из всех трех массивов.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2022, 16:16
Ответы с готовыми решениями:

Найти все чётные элементы двух массивов, найти значения первого массива, которые содержатся во втором.
Даны два массива 35,82,12,74,38,57,45,7,20,56 3,70,45,37,48,75,69,25,6,10,93,47,54,56 Найти все...

Из первого массива A скопировать в массив Б только те элементы, которые удовлетворяют зависимости
Дано два массива 4*4. Из первого массива A скопировать в массив Б только те элементы, которые...

Удалить из первого массива элементы, которые есть во втором
Задано 2 массива из первого нужно удалить элементы, которые есть во втором

Содержатся ли элементы первого списка во втором в указанном порядке."
Просмотрел кучу тем на этом форуме, но никак не могу понять как решить эту задачу: "Даны два...

1
1709 / 1109 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
20.12.2022, 16:47 2
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
#include <iostream>
#include <algorithm>
 
template<typename T, int indirect = 0>
void prnt(T first, T last)
{
 
    while(first != last)
        if constexpr(indirect)
            std::cout << **first++;
        else
            std::cout << *first++;
    std::cout << "\n";
}
 
int main()
{
    std::size_t n { 4 };
    std::size_t m { 3 };
 
    int* a { new int[n]{ 3, 2, 3, 1 } };
    int* b { new int[m]{ 3, 1, 5 } };
 
    std::size_t count { 0 };
    for(auto i { b }; i < b + m; ++i)
        for(auto j { a }; j < a + n; ++j)
            if(*i == *j)
                ++count;
 
    int** c { new int*[count]{} };
    std::size_t it { 0 };
    for(auto i { b }; i < b + m; ++i)
        for(auto j { a }; j < a + n; ++j)
            if(*i == *j)
                c[it++] = i;
 
    std::sort(c, c + count, [](auto a, auto b){ return *a < *b; });
 
    prnt(a, a + n);
    prnt(b, b + m);
    prnt<int**, 1>(c, c + count);
 
    delete [] c;
    delete [] b;
    delete [] a;
 
    return 0;
}
0
20.12.2022, 16:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.12.2022, 16:47
Помогаю со студенческими работами здесь

Заменить нулями те элементы первого массива, которые есть во втором
Даны два массива действительных чисел по 12 элементов в каждом. Заменить нулями те элементы первого...

Вывести на экран элементы первого массива, которые не встречаются во втором.
Заданы два массива целых чисел: обрабатываемый массив и массив разрешенных значений. Вывести на...

Заменить нулями те элементы первого массива, которые есть во втором
даны два массива действительных чисел по 12 элементов в каждом. Заменить нулями те элементы первого...

Заменить нулями те элементы первого массива, которые есть во втором
даны два массива действительных чисел по 12 элементов в каждом. Заменить нулями те элементы первого...

Напечатать элементы, которые содержатся в первом и втором множествах одновременно
помогите пожалуйста решить задачу 5.11. Тема «Множества» Создать два множества из символов,...

Вывести числа, которые содержатся в первом массиве и не содержатся во втором
Я начинающий программист, вот такая задачка у меня. В первом массиве 12 цифр, во втором 10. А...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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