Ввод массива. Закончить программу по заполнению массива - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Нужно ввести с клавиатуры два непустых неубывающих массива целых чисел. Сформировать третий неубыв. массив различных чисел, в которой переписать те и только те элементы, которые встречаются в обоих исходных массивах (пересечение множеств). Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.
Необходимо дописать программу, используя те же самые исходные данные и переменные, какие были в условии. Это первая программа с массивами, пока не догоняю. Но точно знаю, что a или b можно не использовать.
Если убрать массив "a", т.к. он равен "b", то останется "b" и "c". Пересечение множества, как я понял, это когда числа из массивов совпадают. То есть в "b" массиве от 1 до 30, а в "c" массиве от 1 до 60, значит совпадение это от 1 до 30, и переменную k будем использовать чтобы заполнить массив от 1 до 30. Заполнить с клавиатуры значит каждое число от 1 до 30 писать вручную через enter? В конце еще вывести надо через writeln?

Решение задачи: «Ввод массива. Закончить программу по заполнению массива»

textual
Листинг программы
program massiv2;
const
  M = 30;
const
  N = 30;
var
  a: array [1..M] of integer;
var
  b: array [1..N] of integer;
var
  c: array [1..M + N] of integer;
  i, j, k: integer;
 
begin
  for i := 1 to M do
    readln(a[i]);
  for j := 1 to N do
    readln(b[j]);
  k := 1;
  for i := 1 to M do  
    for j := 1 to N do
    begin
      if (k = 1) and (a[i] = b[j]) then
      begin
        c[k] := a[i];
        k := k + 1;
      end
      else
      if (a[i] = b[j]) and (c[k - 1] <> a[i]) then
      begin
        c[k] := b[j];
        k := k + 1;
      end;      
    end;
  writeln('Массив С: ');
  for i := 1 to k-1 do write(c[i], ' ');
end.

Объяснение кода листинга программы

  1. В первой строке объявляются константы M и N, которые задают размер массива a и b соответственно.
  2. Затем объявляются массивы a и b, а также массив c, который будет использоваться для хранения результатов.
  3. Далее, в двух циклах for, происходит ввод данных в массивы a и b.
  4. Затем, в переменной k инициализируется счетчик, который будет использоваться в следующем цикле.
  5. В двух вложенных циклах for происходит сравнение элементов массивов a и b и, если условия выполняются, запись результата в массив c.
  6. В конце программы выводится на экран массив c.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.875 из 5
Похожие ответы