Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 3
Регистрация: 17.12.2014
Сообщений: 111
1

Необходимо переписать в третий массив общие элементы первых двух массивов без повторений

01.02.2015, 17:46. Показов 2114. Ответов 4
Метки нет (Все метки)

не выводит 3-й массив..((((
В чем трудность не понимаю....
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
#include<iostream>
#include<ctime>
using namespace std;
void main()
{
    const int a = 10;
    const int b = 10;
    const int c = a + b;
    int mass1 [a];
    int mass2 [b];
    int mass3 [c];
    srand((int)time(0));
 
    for (int i = 0; i < a; i++)
    {
        mass1[i] = rand() % 10;
        cout << mass1[i] << ' ';
    }
    cout << '\n';
 
    for (int i = 0; i < b; i++)
    {
        mass2[i] = rand() % 10;
        cout << mass2[i] << ' ';
    }
    cout << '\n';
 
    int j = 0, k = 0;
        for (int i = 0; i < a; i++)
        {
                for (int j = 0; j < b; j++)
                {
                    if (mass1[i] == mass2[i])
                        break;
                    if (j != a)
                    { 
                        for (int k = 0; k < i; k++)
                        {
                            if (mass1[k] == mass1[i])
                                break;
                            if (k == i);
                            cout << mass3[i];   
                        }
                    }
                }
        }
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.02.2015, 17:46
Ответы с готовыми решениями:

Переписать в третий массив общие элементы первых двух массивов без повторений
Даны 2 массива размерности M и N соответственно. Необходимо переписать в третий массив общие...

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

Запись чисел первых двух массивов в третий без повторений
Доброго дня суток всем. В данной проге я не знаю, как учесть условие повтора (если он есть,...

Поместить в третий массив общие элементы двух массивов
здравствуйте. никак не могу додуматься как написать цикл по перебору элементов массива. Задача...

4
Модератор
Эксперт С++
11071 / 9128 / 5485
Регистрация: 18.12.2011
Сообщений: 24,399
01.02.2015, 18:00 2
Вы нигде в mass3 ничего не записывали
0
0 / 0 / 3
Регистрация: 17.12.2014
Сообщений: 111
01.02.2015, 18:43  [ТС] 3
есть )))
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<ctime>
using namespace std;
void main()
{
    int a[10],
        b[10],
        c[10] = { 0 },
        d = 2;
    for (int i = 0; i < 10; ++i)
    {
        a[i] = rand() % 10;
        b[i] = rand() % 10;
        cout << a[i] << ' ';
    }
    cout << '\n';
    for (int i = 0; i < 10; ++i)
        cout << b[i] << ' ';
 
    for (int i = 0; i < 10; ++i)
    {
        for (int j = 0; j < 10; ++j)
        {
            if (a[i] == b[j])
            {
                for (int k = 0; k < i; ++k)
                {
                    if (a[k] == a[i])
                    {
                        d = 1; 
                        break;
                    }
                    if (d == 2)
                    {
                        c[i] = a[i];
                    }
                    d = 2;
                }
            }
        }
    }
    cout << '\n';
    for (int i = 0; i < 10; ++i)
    {
        if (c[i] != 0)
            cout << c[i] << ' ';
    }
}
0
Модератор
Эксперт С++
11071 / 9128 / 5485
Регистрация: 18.12.2011
Сообщений: 24,399
01.02.2015, 22:27 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
30
31
32
33
34
35
36
37
38
39
#include<iostream>
#include<set>
#include <algorithm>
using namespace std;
void main()
{
    const int N=10;
    int a[N];
    int b[N];
    set<int> c; // c хранит только уникальные значения
    for (int i = 0; i < N; ++i)
    {
        a[i] = rand() % 10+1;
        b[i] = rand() % 10+1;
        cout << a[i] << ' ';
    }
    cout << '\n';
    for (int i = 0; i < N; ++i)
        cout << b[i] << ' ';
    cout << '\n';
    for (int i = 0; i < N; ++i)
    {
        int j;
        for (j = 0; j < N; ++j)
        {
             if (a[i] == b[j])
             {
                 c.insert(a[i]);
                 break;
             }
        }
    }
 
    set<int>::iterator p;
    for(p=c.begin();p!=c.end();p++)
        cout<<*p<<' ';
    cout<<endl;
    system("pause");
}
0
8 / 8 / 6
Регистрация: 21.04.2018
Сообщений: 142
26.05.2018, 14:22 5
У меня такая-же проблема, только повторение чисел не знаю, как учесть.

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
#include<iostream>
#include<ctime>
#define size 5
using namespace std;
 
void main()
{
    srand(time(0));
    int arr1[5]{ 0 };
    int arr2[5]{ 0 };
    int arr3[10]{ 0 };
    int j = 0;
 
    for (int i = 0; i < 5; i++)
    {
        arr1[i] = rand() % 10;
        cout << "arr1[" << i << "] = " << arr1[i] << endl;
    }
    cout << endl;
 
    for (int i = 0; i < 5; i++)
    {
        arr2[i] = rand() % 10;
        cout << "arr2[" << i << "] = " << arr2[i] << endl;
    }
    cout << endl;
 
    for (int i = 0; i < 10; i++)
    {
        if (i % 2 == 0)
        {
            arr3[i] = arr1[j];
        }
        else if (i % 2 != 0)
        {
            arr3[i] = arr2[j];
        }
        else
            j++;
    }
 
    for (int i = 0; i < 10; i++)
    {
        cout << "arr3[" << i << "] = " << arr3[i] << endl;
    }
    system("pause");
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.05.2018, 14:22

Создать третий массив, в котором нужно собрать общие элементы двух массивов
Даны два массива: A и B. Необходимо создать третий массив, в котором нужно собрать общие элементы...

Создать третий массив, в котором нужно собрать общие элементы двух массивов
Элементы, которые есть только в массиве А или только в массиве В, заполнить ими массив C. Всё...

Переписать в третий массив элементы данных двух массивов
Даны два массива A и B, заполненные случайными числами (m и n задаются пользователем). ...

Построить третий массив из общих элементов первых двух массивов
есть такая задача: задать 2 массива с не более 8 действительными данными в каждом. Построить третий...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.