Заменить отрицательные элементы массива на их абсолютные величины.
Решение
Для решения задачи опишем процедуру. Ей будем передавать один параметр − массив, который и будет результатом, при этом значения некоторых элементов могут быть изменены.
Program Example_97;
Procedure Substitution1 (Var m: myarray);
Var i: Integer;
Begin
For i:=1 To n Do
If m[i]<0 Then m[i]:=-m[i];
End;
Пример 2
Прибавить к каждому элементу массива число 25.
Решение
Преобразуем предыдущую процедуру.
Program Example_98;
Procedure Substitution2 (Var m: myarray);
Var i: Integer;
Begin
For i:=1 To n Do m[i]:=m[i]+25;
End;
Пример 3
Если очередной элемент массива четный, то прибавить к нему первый, если нечетный − прибавить последний. Первый и последний элементы не изменять.
Решение
Просмотрим все элементы массива, кроме первого и последнего, и если очередной элемент четный, то есть делится на 2 без остатка, то увеличим его на значение первого элемента, иначе − увеличим его на значение последнего элемента.
Program Example_99;
Procedure Substitution3 (Var m: myarray);
Var i: Integer;
Begin
For i:=2 To n-1 Do
If m[i] Mod 2=0 Then m[i]:=m[i]+m[1]
Else m[i]:=m[i]+m[n];
End;
Создание массива
Рассмотрим два примера.
Пример 1
Даны два одномерных массива одинаковой размерности. Получить третий массив такой же размерности, каждый элемент которого равен сумме соответствующих элементов данных массивов.
Решение
Пусть даны два массива − А и В, состоящие из пяти элементов. Получим из них массив С, тоже состоящий из пяти элементов, причем первый элемент этого массива равен сумме первых элементов массивов А и В, второй − сумме вторых элементов данных массивов − и так далее.
i
A
B
C
Для решения этой задачи опишем процедуру, которой передаются три параметра. Первые два − это два исходных одномерных массива, третий − это одномерный массив той же размерности, который является результатом и заполняется по указанному правилу.
Program Example_100;
Procedure Sum_Ar(a, b: myarray;
Var с: myarray);
Var i: Integer;
Begin
For i:=1 To n Do c[i]:=a[i]+b[i];
End;
Пример 2
Даны первый член арифметической прогрессии и ее разность. Записать в массив первые n членов прогрессии.