function arrSumRec(d : array of integer; n : integer) : integer;
begin
if n > d.Length-1 then exit;
result := d[n]+arrSumrec(d, n+1);
n += 1;
end;
begin
write('введите количество элементов для массива ');
readln(n);
d := new integer[n];
d := arrRandom(n, 1, 100);
writeln('сгенерирован массив из ', n, ' элементов со значениями в диапозоне 1..100');
writeln(d);
writeln('Сумма = ', arrSumRec(d, 0));
end.
функция function arrSumRec(d : array of integer; n : integer) : integer; в качестве первого параметра получает массив сумму которого считаем в качестве второго номер члена начиная с которого считаем сумму. Не забываем что нумерация начинается с нуля. поэтому чтобы посчитать сумму всех членов массива в качестве второго параметра указываем 0.
var A:array[1..20] of integer;
i,k,min,n:integer;
begin
min:=1000000000; // прощу прощение за такое )
for i:=1 to 20 do A[i]:=random(9); // заполняем массив
for i:=1 to high(A) do // находим минимальное нечётное, запоминаем его номер
if (A[i] < min) and (A[i] mod 2 <> 0) then begin
n:=i; min:=A[i];
end;
for i:=1 to 20 do write(A[i]:3); // Выводит весь массив
writeln(); // просто перевод на новую строку для красоты
writeln('Minimum: ',min,' Ego nomer: ',n); // выдаём минимальное и его номер
end.
var
d : array of integer;
n : integer;
function arrSumRec(d : array of integer; n : integer) : integer;
begin
if n > d.Length-1 then exit;
result := d[n]+arrSumrec(d, n+1);
n += 1;
end;
begin
write('введите количество элементов для массива ');
readln(n);
d := new integer[n];
d := arrRandom(n, 1, 100);
writeln('сгенерирован массив из ', n, ' элементов со значениями в диапозоне 1..100');
writeln(d);
writeln('Сумма = ', arrSumRec(d, 0));
end.
функция function arrSumRec(d : array of integer; n : integer) : integer; в качестве первого параметра получает массив сумму которого считаем в качестве второго номер члена начиная с которого считаем сумму. Не забываем что нумерация начинается с нуля. поэтому чтобы посчитать сумму всех членов массива в качестве второго параметра указываем 0.