Задача на массивы через процедуру - 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.
Объяснение кода листинга программы
- Константа
m
установлена на значение 15. - Определён тип
arr
как массив целых чисел от 1 доm
. - Создана процедура
unique
с параметрамиx
(массив),y
(массив) иn
(целое число). - В процедуре
unique
объявлены переменныеi
,j
иf
как целые числа иboolean
соответственно. - В процедуре
unique
переменнойn
присвоено значение 0. - В цикле от 1 до
m
производится проверка уникальности элементов массиваx
и, при выполнении условия, увеличивается значение переменнойn
и добавляется уникальный элемент в массивy
. - Объявлен массив
b
иc
как массивы типаarr
и переменныеi
иk
как целые числа. - Генерируются случайные числа и выводится массив
b
. - Вызывается процедура
unique
с параметрами массиваb
, массиваc
и переменнойk
. - Выводятся уникальные элементы массива
c
. - Пользователь вводит что-то с клавиатуры.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д