Работа с массивами: постpоение пеpесечения заданных последовательностей - C (СИ)
Формулировка задачи:
Помогите написать код. Дано натуpальное n (n<=100),целые числа a1,...,1n и b1,...,bn. Постpоить пеpесечение последовательностей a1,..,an и b1,..,bn,
т.е.получить последовательность c1,...,ck,содеpжащую все числа, входящие в a1,...,an и b1,...,bn.
Решение задачи: «Работа с массивами: постpоение пеpесечения заданных последовательностей»
textual
Листинг программы
k = 0; for(i=0; i<n; i++) for(j=0; j<n; j++) if (a[i]==b[j]) { c[k++] = a[i]; break; }
Объяснение кода листинга программы
В данном коде выполняется построение пересечения двух заданных последовательностей.
- В первой строке объявляется переменная
k
со значением 0, которая будет использоваться для подсчета количества элементов пересечения. - В следующей строке начинается два вложенных цикла. Первый цикл выполняется
n
раз, гдеn
- это количество элементов в первом массивеa
. Второй цикл также выполняетсяn
раз, гдеn
- это количество элементов во втором массивеb
. - В условиях циклов проверяется, равны ли текущие элементы массивов
a
иb
. Если это так, то выполняется следующее действие. - Взятый элемент из массива
a
копируется в массивc
и к переменнойk
прибавляется единица, чтобы увеличить счетчик. - С помощью оператора
break
выход осуществляется из внутреннего цикла. - После завершения циклов, в массиве
c
будет содержаться пересечение двух заданных последовательностей.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д