Задача на массивы через процедуру - Pascal

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

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

Нужно сформировать с использованием процедуры массив элементов, каждый из которых встречается в массиве B1, B2, ..., Bn не более одного раза. Напишите программу, плиз.

Решение задачи: «Задача на массивы через процедуру»

textual
Листинг программы
const m = 15;
type arr = array [1..m] of integer;
 
procedure unique(x: arr; var y: arr; var n: integer);
var i, j: integer;
    f: boolean;
begin
  n := 0;
  for i := 1 to m do
    begin
     f := true;
     for j := 1 to m do f := f and ((i = j) or (x[j] <> x[i]));
      if f
        then begin
          inc(n);
          y[n] := x[i]
        end
    end
end;
 
var b, c: arr;
    i, k: integer;
begin
  randomize;
  writeln('Source array:');
  for i := 1 to m do
    begin
      b[i] := -9 + random(19);
      write(b[i]:4)
    end;
  writeln;
  unique(b, c, k);
  writeln('Unique elements:');
  if k = 0
    then write('Not found')
    else for i := 1 to k do write(c[i]:4);
  readln
end.

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

  1. Константа m установлена на значение 15.
  2. Определён тип arr как массив целых чисел от 1 до m.
  3. Создана процедура unique с параметрами x (массив), y (массив) и n (целое число).
  4. В процедуре unique объявлены переменные i, j и f как целые числа и boolean соответственно.
  5. В процедуре unique переменной n присвоено значение 0.
  6. В цикле от 1 до m производится проверка уникальности элементов массива x и, при выполнении условия, увеличивается значение переменной n и добавляется уникальный элемент в массив y.
  7. Объявлен массив b и c как массивы типа arr и переменные i и k как целые числа.
  8. Генерируются случайные числа и выводится массив b.
  9. Вызывается процедура unique с параметрами массива b, массива c и переменной k.
  10. Выводятся уникальные элементы массива c.
  11. Пользователь вводит что-то с клавиатуры.

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


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

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

7   голосов , оценка 4.286 из 5