Вот пример рекурсивной функции на языке Pascal для вычисления максимального элемента массива из n элементов:
program MaxElement; const n = 5; // количество элементов в массиве type array1 = array[1..n] of integer; var arr: array1; function FindMaxElement(a: array1; i: integer): integer; begin if i = 1 then FindMaxElement := a[i] else begin FindMaxElement := FindMaxElement(a, i-1); // рекурсивный вызов функции с i-1 if a[i] > FindMaxElement then FindMaxElement := a[i]; end; end; var i, max: integer; begin // заполняем массив случайными числами for i := 1 to n do arr[i] := random(100); // выводим массив на экран writeln('Массив:'); for i := 1 to n do write(arr[i], ' '); writeln; // вызываем функцию для поиска максимального элемента max := FindMaxElement(arr, n); writeln('Максимальный элемент массива: ', max); end.
Эта программа использует рекурсивную функцию FindMaxElement, которая находит максимальный элемент в массиве arr размера n. На каждом шаге рекурсии функция сравнивает текущий элемент массива с максимальным значением, найденным на предыдущих шагах, и возвращает большее из двух.
Вот пример рекурсивной функции на языке Pascal для вычисления максимального элемента массива из n элементов:
program MaxElement;const
n = 5; // количество элементов в массиве
type
array1 = array[1..n] of integer;
var
arr: array1;
function FindMaxElement(a: array1; i: integer): integer;
begin
if i = 1 then
FindMaxElement := a[i]
else
begin
FindMaxElement := FindMaxElement(a, i-1); // рекурсивный вызов функции с i-1
if a[i] > FindMaxElement then
FindMaxElement := a[i];
end;
end;
var
i, max: integer;
begin
// заполняем массив случайными числами
for i := 1 to n do
arr[i] := random(100);
// выводим массив на экран
writeln('Массив:');
for i := 1 to n do
write(arr[i], ' ');
writeln;
// вызываем функцию для поиска максимального элемента
max := FindMaxElement(arr, n);
writeln('Максимальный элемент массива: ', max);
end.
Эта программа использует рекурсивную функцию FindMaxElement, которая находит максимальный элемент в массиве arr размера n. На каждом шаге рекурсии функция сравнивает текущий элемент массива с максимальным значением, найденным на предыдущих шагах, и возвращает большее из двух.