{
правильная программа, кол-во элементов вводится с клавиатуры
}
Program Summa;
uses crt;
type a1= array of integer;
var a: a1;
m,s,n: integer;
procedure Input;
const p=1;
const q=20;
var i: integer;
begin
randomize;
begin
for i:=0 to n-1 do a[i]:=random(q-p+1)+p;
write('a[',i,']=');
readln(a[i]);
end;
end;
procedure Print;
var i: integer;
begin
write('Массив целых чисел А: ');
for i:=0 to n-1 do write(' ',a[i]);
writeln;
writeln;
end;
procedure Sum( m: integer);
var i: integer;
begin
s:=0;
for i:=0 to m-1 do s:=s+a[i];
end;
Begin
ClrScr;
write('введите кол-во элементов в массиве: ');
readln(n);
SetLength(a, n);
Input;
ClrScr;
Print;
write('Сколько элементов суммировать: ');
readln(m);
Sum(m);
writeln;
writeln('Сумма ',m,' элементов масссива равна: ', s);
Sum(n);
writeln;
writeln('Сумма всех ',n,' элементов массива равна: ', s);
Writeln ('Среднее арифмитическое всех элементов равно ', s/n);
Readkey;
end.