uses crt;
const max=100;
var a:array[1..max] of integer;
n,i,j,k,p,q:byte;
s,x:integer;
begin
clrscr;
repeat
write('Размер массива n=');
readln(n);
until n in [1..max];
writeln('Введите ',n,' целых чисел:');
for i:=1 to n do
begin
write('a[',i,']=');
readln(a[i]);
end;
clrscr;
writeln('Исходный массив:');
for i:=1 to n do
write(a[i],' ');
writeln;
writeln;
s:=0;{сумма}
i:=1;
while i<=n do{пока не конец массива}
if a[i]>0 then{если положительное}
begin
k:=1;{1 есть}
for j:=i+1 to n do{смотрим вперед}
if a[j]=a[i] then k:=k+1;{если такое же, считаем}
if k>2 then{если больше 2х}
begin
s:=s+a[i]*k;{считаем сумму, не понял как считать,
только 1 раз(тогда не нужно умножать на к)или все, тогда нужно}
p:=i;x:=a[i];{запоминаем число и от него}
while p<=n do{до конца массива}
if a[p]=x then{все такие}
begin
for q:=p to n-1 do{удаляем сжатием массива влево}
a[q]:=a[q+1];{на 1}
n:=n-1;{уменьшаем размер массива}
end
else p:=p+1;{если не равно х}
end
else i:=i+1;{если не больше 2х раз}
end
else i:=i+1;{если не положительное}
write('Сумма чисел, встречающихся более 2х раз=',s);
readln
end.