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

В массив С переписать элементы массива А не повторяющиеся в массиве Б

09.12.2021, 19:36. Показов 297. Ответов 2

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
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
#include <iostream>
#include <cmath>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
 
int main()
{
const int n=7, k=14;
int t[n];
int g[k];
    cout<<"Massiv A\n";
    srand(time(NULL));
    for(int i=0; i<n; i++)
    {
        t[i]=rand() % 51;
        cout<<t[i]<<"  ";
    }
    cout<<endl;
    
    cout<<"Massiv B\n";
    for(int i=0; i<k; i++)
    {
        g[i]=rand() % 51;
        cout<<g[i]<<"  ";
    }
    
    
    cout<<endl;
    
    
    cout<<"Massiv C\n";     
    int p;
        p=0;
    for(int i=0; i<n; i++)
    {
        for(int j=0; j<k; j++)
        {
            if(t[i] != g[j])
            {
                p++;
            }
        }
    }
    int *c=new int[p];
    p=0;
    for(int i=0; i<n; i++)
    {
        for(int j=0; j<k; j++)
        {
            if(t[i] != g[j])
            {
                p++;
                c[p]=t[i];
                cout<<c[p]<<"   ";
            break;  
            }
            else continue;
    
        }
    
    }
    
    delete [] c;
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2021, 19:36
Ответы с готовыми решениями:

Дан массив В(15).Переписать в массив А повторяющиеся элементы массива В
Дан массив В(15).Переписать в массив А повторяющиеся элементы массива В

Сформировать новый массив, содержащий повторяющиеся элементы массива A. Элементы в новом массиве не повторяются
Сформировать новый массив, содержащий повторяющиеся элементы массива A. Элементы в новом массиве не...

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

Переписать в массив C все элементы массива A, кроме присутствующих в массиве B несколько раз
Даны два одномерных массива целых чисел A и В. Вычислить одномерный массив С, который содержит:...

Требуется переписать элементы массива a в массив b, удвоив все элементы, меньшие первого элемента, остальные переписать
Требуется переписать элементы массива a в массив b, удвоив все элементы, меньшие первого элемента,...

2
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,713
09.12.2021, 19:44 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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <iostream>
#include <cmath>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
using namespace std;
 
int main()
{
    const int n=7, k=14;
    int t[n];
    int g[k];
    cout<<"Massiv A\n";
    srand((unsigned)time(NULL));
    for(int i=0; i<n; i++)
    {
        t[i]=rand() % 51;
        cout<<t[i]<<"  ";
    }
    cout<<endl;
 
    cout<<"Massiv B\n";
    for(int i=0; i<k; i++)
    {
        g[i]=rand() % 51;
        cout<<g[i]<<"  ";
    }
    cout<<endl;
 
    int p=0;
    for(int i=0; i<n; i++)
    {
        int j=0;
        for(; j<k; j++)
        {
            if(t[i] == g[j])
                break;
        }
        if(j==k)
            p++;
    }
    int *c=new int[p];
    p=0;
    for(int i=0; i<n; i++)
    {
        int j=0;
        for(; j<k; j++)
        {
            if(t[i] == g[j])
                break;
        }
        if(j==k)
        {
            c[p++]=t[i];
        }
    }
 
    cout<<"Massiv C\n";     
    for(int i=0; i<p; i++)
        cout<<c[i]<<" ";
 
    cin.get();
    delete [] c;
    return 0;
}
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
09.12.2021, 19:52 3
Цитата Сообщение от krutoi123 Посмотреть сообщение
const int n=7, k=14;
int t[n];
int g[k];
массивы лучше динамические, размер вводите с клавиатуры (назовите массивы A и B)
Цитата Сообщение от krutoi123 Посмотреть сообщение
Обязательным условием так же является использование указателя
как минимум замените обращение по индексу t[i] на обращение по указателю *(t + i)
0
09.12.2021, 19:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.12.2021, 19:52
Помогаю со студенческими работами здесь

Массив: В одномерном массиве, все отрицательные элементы, имеющие четный порядковый номер переписать в начало массива.
Подскажите, есть задача: В одномерном массиве, все отрицательные элементы, имеющие четный...

Переписать элементы заданного массива X (n<=10) в обратном порядке в новый массив. Вычислить количество отрицательных элементов в новом массиве.
Переписать элементы заданного массива X (n&lt;=10) в обратном порядке в новый массив. Вычислить...

Одномерный массив (элементы с четными индексами переписать в массив z.в массиве z поменять местами максимальный и минимальный элементы)
задан массив x(n).элементы с четными индексами переписать в массив z.в массиве z поменять местами...

Переписать в массив Z все положительные элементы массива Y, а в массиве R - все отрицательные
дан массив X (60 элементов). Вычислить: y=2*sin(SQRT (x-1))\SQR(SQRT (x) *2*x - 3 переписать в...

Переписать все повторяющиеся числа из массива A(n) в массив B (n) по одному разу
Задан массив целых чисел А(n),n &lt; 200. Разработать программу, переписывающую все повторяющиеся...

Найти повторяющиеся элементы массива А, которые есть в массиве В
Два массива А и В вводятся из клавиатуры(натуральные числа). Нужнто найти повторяющиеся элементы...


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

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