Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 04.09.2014
Сообщений: 34

Нахождение общих элементов двух массивов

09.09.2014, 12:27. Показов 3322. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте .
Возникла проблема с нахождением общих элементов 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
string[] mas1 = new string[5];
            string[] mas2 = new string[5];
            string[] tot = new string[10];
 
            Console.WriteLine("Введите mas1:");
            for (int i = 0; i < 5; i++)
            {
                mas1[i] = Console.ReadLine();
            }
            Console.WriteLine("Введите mas2:");
            for (int i = 0; i < 5; i++)
            {
                mas2[i] = Console.ReadLine();
            }
 
            int k=0;
            for (int i = 0; i < 5; i++)
            {
                for (int j = 0; j < 5; j++)
                {
 
                    if (mas1[i] == mas2[j])
                    {
                        tot[k] = mas1[i];
                        k++;
                        Console.WriteLine("tot:" + tot[k]);
                    }
                
                }
            }
Не получается вывести общие элементы:
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.09.2014, 12:27
Ответы с готовыми решениями:

Сумма элементов двух массивов
в этом примере пересечение, а как сделать сумму элементов двух массивов? напр. а: 2 1 6 b: 1 3 5 с: 3 4 11 class Example ...

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

Создать массив, содержащий суммы соответствующих элементов двух исходных массивов
Недавно начал изучать C# и вот наткнулся на проблему... Массив не хочет строится из двух данных!!! Грубо говоря, вот условие задачи: ...

7
 Аватар для Дмитрий3241
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
Записей в блоге: 6
09.09.2014, 12:35
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using System;
using System.Linq;
 
namespace ConsoleApplication5
{
    class Program
    {
        static void Main( string[] args )
        {
            int[] a = { 1, 2, 3 };
            int[] b = { 2, 3, 4 };
 
            Console.WriteLine( string.Join( " ", a.Intersect( b ) ) );
        }
    }
}
0
 Аватар для wi34rd
13 / 13 / 10
Регистрация: 09.09.2014
Сообщений: 41
09.09.2014, 12:36
C#
1
2
k++;
Console.WriteLine("tot:" + tot[k]);
Поменять местами нужно.
0
0 / 0 / 0
Регистрация: 04.09.2014
Сообщений: 34
09.09.2014, 12:39  [ТС]
Интересный вариант . А можно использовать эту конструкцию , но только сохранить всё это в 3-ий массив?
0
 Аватар для Дмитрий3241
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
Записей в блоге: 6
09.09.2014, 12:42
GNA, да, конечно:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using System;
using System.Linq;
 
namespace ConsoleApplication5
{
    class Program
    {
        static void Main( string[] args )
        {
            int[] a = { 1, 2, 3 };
            int[] b = { 2, 3, 4 };
 
            int[] c = a.Intersect( b ).ToArray();
 
            Console.WriteLine( string.Join( " ", c ) );
        }
    }
}
1
0 / 0 / 0
Регистрация: 04.09.2014
Сообщений: 34
09.09.2014, 12:52  [ТС]
Спасибо большое!

Добавлено через 2 минуты
А эти функции только к массивам можно применять ? Нельзя , например , к массивам структур?

Добавлено через 2 минуты
Если у меня есть такие данные:
C#
1
2
3
4
5
6
7
8
9
10
struct Str1{
 
public int i;
public string info;
 
}
Str1 [] str1=new St1r[5];
Str2 [] str2=new Str2[5];
 
//вводятся данные с клавиатуры
И мне нужно найти общие поля info этих массивов структур

Добавлено через 2 минуты
C#
1
2
 Console.WriteLine("Общие элементы:");
Console.WriteLine(string.Join(" ", str1.info.Intersect(str2.info)));
0
 Аватар для Дмитрий3241
660 / 530 / 137
Регистрация: 07.07.2011
Сообщений: 1,232
Записей в блоге: 6
09.09.2014, 13:06
GNA,
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
using System;
using System.Linq;
 
namespace ConsoleApplication5
{
    class Program
    {
        struct Str1
        {
            public int i;
                public string info;
 
            public override bool Equals( object obj )
            {
                return ((Str1)obj).info == this.info;
            }
 
            public override string ToString()
            {
                return info;
            }
        }
 
        static void Main( string[] args )
        {
            Str1[] a = { new Str1 { info = "1" }, new Str1 { info = "2" }, new Str1 { info = "3" } };
            Str1[] b = { new Str1 { info = "2" }, new Str1 { info = "3" }, new Str1 { info = "4" } };
 
            Console.WriteLine( string.Join( " ", b.Intersect( a ) ) );
        }
    }
}
0
0 / 0 / 0
Регистрация: 04.09.2014
Сообщений: 34
09.09.2014, 13:55  [ТС]
Спасибо за ответ , так помогло. Из-за невнимательности ошибся.

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
string[] mas1 = new string[5];
            string[] mas2 = new string[5];
            string[] tot = new string[10];
 
            Console.WriteLine("Введите mas1:");
            for (int i = 0; i < 5; i++)
            {
                mas1[i] = Console.ReadLine();
            }
            Console.WriteLine("Введите mas2:");
            for (int i = 0; i < 5; i++)
            {
                mas2[i] = Console.ReadLine();
            }
 
            int k=0;
            for (int i = 0; i < 5; i++)
            {
                for (int j = 0; j < 5; j++)
                {
 
                    if (mas1[i] == mas2[j])
                    {
                        k++;
                        tot[k] = mas1[i];
                        
                        Console.WriteLine("tot:" + tot[k]);
                    }
                
                }
            }
А можно у Вас попросить помочь с одним вопросом : вот я нашёл общие элементы . А вот как вывести потом массив1 и массив2 уже без этих общих элементов?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.09.2014, 13:55
Помогаю со студенческими работами здесь

В элементы третьего массива записать сумму соответствующих элементов первых двух массивов
Объявить три массива. Первые два заполнить случайными значениями от 10 до 30. В элементы третьего массива записать сумму соответствующих...

В элементы третьего массива записать сумму соответствующих элементов первых двух массивов
Объявить три массива. Первые два заполнить случайными значениями от 10 до 30. В элементы третьего массива записать сумму соответствующих...

Дано два массива одинаковой длины по 10 элементов. Создать третий массив который будет отображать сумму первых двух массивов(для одномерного и двумер
Дано два массива одинаковой длины по 10 элементов. Создать третий массив который будет отображать сумму первых двух массивов(для...

Нахождение общих элементов двух массивов
Дали задачу на курсовую, а я в С++ вообще балда, помогите задачку написать, плз! Условие такое: Нахождение общих элеменвто двух...

Найти НОД общих элементов двух массивов
Как найти НОД(наибольший общий делитель) общих элементов массивов .Благодарю за ответ Scanner in = new Scanner(System.in); ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru