Найти сумму элементов массива R, а так же сумму корней элементов массива R - Pascal ABC
Формулировка задачи:
дан произвольный массив R размерностью n. найти сумму элементов массива R, а так же сумму корней элементов массива R. Исходные данные взять самостоятельно.
Проблема в том что надо использовать процедуру или функцию.
я написал но без них. А переделать не понимаю как
Помогите
вот мой код
Решение задачи: «Найти сумму элементов массива R, а так же сумму корней элементов массива R»
textual
Листинг программы
type mas=array[1..20] of real;
procedure vvod(var a:mas; var n:byte);
var i:byte;
begin
write('Введите размерность массива от 2 до 20 n=');
readln(n);
writeln('Массив');
for i:=1 to n do
begin
a[i]:=20*random;
write(a[i]:6:2);
if i=12 then writeln;
end;
writeln;
end;
procedure min_max(a:mas;n:byte;var imin,imax:byte);
var i:byte;
begin
imin:=1;
imax:=1;
for i:=2 to n do
begin
if a[i]>a[imax] then imax:=i;
if a[i]<a[imin] then imin:=i;
end;
writeln('Минимальный элемент=',a[imin]:0:2,' его индекс=',imin);
writeln('Максимальный элемент=',a[imax]:0:2,' его индекс=',imax);
end;
procedure summa(a:mas; n,imin,imax:byte; var sum,skk:real);
var i,t:byte;
begin
if imin>imax then
begin
t:=imin;
imin:=imax;
imax:=t;
end;
sum:=0;
skk:=0;
for i:=imin to imax do
begin
sum:=sum+ a[i];
skk:=skk+sqrt(a[i]);
end;
writeln('Сумма квадратных корней элементов массива ',skk:0:2);
writeln('Сумма ',sum:0:2);
end;
var a:mas;
sum,skk:real;
n,imin,imax:byte;
begin
vvod(a,n);
min_max(a,n,imin,imax);
summa(a,n,imin,imax,sum,skk);
end.
Объяснение кода листинга программы
- Создается тип данных
mas, который представляет собой массив из 20 элементов типа real. - Создается процедура
vvod, которая запрашивает у пользователя размерность массива от 2 до 20 и затем заполняет его случайными числами от 0 до 20. - Создается процедура
min_max, которая находит минимальный и максимальный элементы в массиве и выводит их на экран. - Создается процедура
summa, которая находит сумму элементов массива и сумму квадратных корней этих элементов. - В основной части программы создается переменная
aтипаmasи заполняется случайными числами. - Затем вызываются процедуры
min_maxиsummaдля нахождения минимального и суммы элементов массива. - Наконец, выводятся на экран сумма квадратных корней элементов массива и сумма элементов массива.