Заполнить массивы целыми случайными числами из диапазона от 0 до 50 - Turbo Pascal
Формулировка задачи:
Массивы Х(10) и Y(10) заполнить целыми случайными числами из диапазона от 0 до 50. Сформировать массив М таким образом, что М(I)=1, если X(I)>Y(I), в противном случае М(I)=0. Вывести Х,Y,M.
Решение задачи: «Заполнить массивы целыми случайными числами из диапазона от 0 до 50»
textual
Листинг программы
const n=10; type mas=array[1..n] of byte; var x,y,m:mas; procedure vv_mas(var a:mas;s:string;f:boolean); var i:byte; begin writeln(s); for i:=1 to n do begin if f then a[i]:=random(51); write(a[i]:3) end; writeln end; procedure mm(var a,b,c:mas); const yn:array[boolean] of integer=(0,1); var i:integer; begin for i:=1 to n do c[i]:=yn[a[i]>b[i]] end; begin vv_mas(x,'X:',true); vv_mas(y,'Y:',true); mm(x,y,m); vv_mas(m,'M:',false) end.
Объяснение кода листинга программы
В данном коде происходит следующее:
- Создается переменная
n
со значением 10, которая представляет собой количество элементов в массиве. - Создается тип данных
mas
, который представляет собой массив целых случайных чисел от 0 до 50. - Создаются три переменные
x
,y
иm
, которые представляют собой массивы типаmas
. - Создается процедура
vv_mas
, которая принимает три параметра:var a
(массив),s
(строка) иf
(логическое значение), и выполняет следующие действия: выводит строкуs
, затем заполняет массивa
случайными числами от 0 до 50, если значениеf
равноtrue
. - Создается процедура
mm
, которая принимает три параметра:var a
,b
иc
(массивы), и выполняет следующие действия: для каждого элемента массиваa
сравнивает его со значением массиваb
и присваивает соответствующий элемент массиваc
в зависимости от результата сравнения. - Вызываются процедуры
vv_mas
для массивовx
,y
иm
, а также вызывается процедураmm
для массивовx
,y
иm
. - Конец программы.