В каждом из массивов найти наименьшее значение и прибавить его ко всем элементам массивов - PascalABC.NET
Формулировка задачи:
Заданы два массива А(N) и В(M). В каждом из массивов найти наименьшее значение и прибавить его ко всем элементам массивов. На печать вывести исходные и преобразованные массивы.Надо написать прогу в Pascal.
Решение задачи: «В каждом из массивов найти наименьшее значение и прибавить его ко всем элементам массивов»
textual
Листинг программы
{$reference System.Core.dll}
uses System.Linq, Arrays;
var
a : array of integer := Arrays.CreateRandomIntegerArray(10);
b : array of integer := Arrays.CreateRandomIntegerArray(20);
begin
a.Writeln(',');
a := System.Array.ConvertAll(a, (x : integer) -> x + a.Min());
a.Writeln(',');
b.Writeln(',');
b := System.Array.ConvertAll(b, (x : integer) -> x + b.Min());
b.Writeln(',');
end.
Объяснение кода листинга программы
- Создается массив a размером 10 с случайными значениями с помощью функции Arrays.CreateRandomIntegerArray(10).
- Выводится на экран содержимое массива a с помощью метода Writeln(',').
- Массив a обрабатывается функцией System.Array.ConvertAll, которая преобразует массив в новый массив, применяя к каждому элементу лямбда-выражение (x : integer) -> x + a.Min(), где a.Min() возвращает минимальное значение из массива a.
- Результат обработки выводится на экран с помощью метода Writeln(',').
- Создается массив b размером 20 с случайными значениями с помощью функции Arrays.CreateRandomIntegerArray(20).
- Выводится на экран содержимое массива b с помощью метода Writeln(',').
- Массив b обрабатывается функцией System.Array.ConvertAll, которая преобразует массив в новый массив, применяя к каждому элементу лямбда-выражение (x : integer) -> x + b.Min(), где b.Min() возвращает минимальное значение из массива b.
- Результат обработки выводится на экран с помощью метода Writeln(',').
- Программа завершается.