uses crt;
const n=35;
type mas=array[1..n] of integer;
function SumKol(a:mas;d:byte;i1,i2:integer;var k:byte):integer;
var i:byte;
s:integer;
begin
s:=0;k:=0;
for i:=1 to n do
if (a[i] mod d=0)and(a[i]>=i1)and(a[i]<=i2) then
begin
s:=s+a[i];
k:=k+1;
end;
SumKol:=s;
end;
var a:mas;
i,kol:byte;
sum:integer;
begin
clrscr;
randomize;
writeln('Массив:');
for i:=1 to n do
begin
a[i]:=random(41)-15;
write(a[i]:4);
end;
writeln;
writeln;
sum:=SumKol(a,2,-12,7,kol);
writeln('Сумма кратных 2 из интервала [-12,7]=',sum,' количество=',kol);
writeln;
sum:=SumKol(a,3,5,21,kol);
writeln('Сумма кратных 3 из интервала [5,21]=',sum,' количество=',kol);
readln
end.
Следующий вариант
uses crt;
const n=35;
type mas=array[1..n] of integer;
procedure SumKol(a:mas;d:byte;i1,i2:integer;var s:integer;var k:byte);
var i:byte;
begin
s:=0;k:=0;
for i:=1 to n do
if (a[i] mod d=0)and(a[i]>=i1)and(a[i]<=i2) then
begin
s:=s+a[i];
k:=k+1;
end;
end;
var a:mas;
i,kol:byte;
sum:integer;
begin
clrscr;
randomize;
writeln('Массив:');
for i:=1 to n do
begin
a[i]:=random(41)-15;
write(a[i]:4);
end;
writeln;
writeln;
SumKol(a,2,-12,7,sum,kol);
writeln('Сумма кратных 2 из интервала [-12,7]=',sum,' количество=',kol);
writeln;
SumKol(a,3,5,21,sum,kol);
writeln('Сумма кратных 3 из интервала [5,21]=',sum,' количество=',kol);
readln
end.