Разработать модуль программиста, содержащий следующие процедуры и функции работы с одномерным массивом:
Ввод элементов массива случайным образом;
Вывод массива на экран;
Вычисление количества четных и нечетных по значениям элементов;
Увеличение четных или нечетных элементов на заданное число;
Используя процедуры и функции модуля программиста, разработать программу решения следующей задачи:
Задать 2 одномерных числовых массива одинаковой размерности. В том их них, где четных элементов больше, чем нечетных, увеличить на 10 четные элементы и уменьшить на 10 нечетные элементы.
Текст модуля программиста к задаче 14.
UnitMyMod;
Interface
Type Mas=Array[1..15] of integer; { тип массив }
Procedure Vvod (Var X:Mas);
Procedure Vivod (Var X:Mas);
Function Col1 (Var X:Mas) : byte;
Function Col2 (Var X:Mas) : byte;
Procedure Uvel (Var X: Mas; n:integer);
Procedure Umen (Var X: Mas; n:integer);
Implementation
Procedure Vvod; {процедура ввода массива}
Vari: byte;
Begin
For i:=1 to 15 do
X[i]:=Random(100)-25;
End;
Procedure Vivod ; {процедура вывода массива}
Vari: byte;
Begin
For i:=1 to15 do
Write (X[i]:5);
Writeln;
End;
Function Col1 (Var X:Mas) : byte;
{функция подсчета кол-ва четных значений в массиве}
Var i, z: byte;
Begin
z:=0;
For i:=1 to 15 do begin
ifX[i] mod 2 =0 then z:=z+1;
End;
Col1:=z;
End;
Function Col2 (Var X:Mas) : byte;
{функция подсчета кол-ва нечетных значений в массиве}
Var i, z: byte;
Begin
z:=0;
For i:=1 to15 do begin
ifX[i] mod 2 <>0 then z:=z+1;
End;
Col2:=z;
End;
Procedure Uvel;
{процедура увеличения четных эл-тов на значение n}
Vari: byte;
Begin
For i:=1 to 15 do
if X[i] mod 2 =0 thenX[i]:=X[i]+n;
End;
Procedure Umen;
{процедура уменьшения нечетных эл-тов на значение n}