Вывести три неповторяющихся элемента массива и их номера - PascalABC.NET

Формулировка задачи:

необходимо, чтобы программа выводила три НЕПОВТОРЯЮЩИХСЯ элемента массива и их номера Что нужно поправить?
const n=5;
var a:Array[1..n] of integer; 
i,min1,min2,min3,k1,k2,k3:integer;
begin 
for i:=1 to n do begin
read(a[i]);
write(a[i],' ');
end;
min1:=1001;min2:=1001;min3:=1001;
k1:=0;k2:=0;k3:=0;
for i:=1 to n do begin
if a[i]< min1 then begin min2:=min1;min1:=a[i];k2:=k1; k1:=i; end else
if a[i]< min2 then begin min3:=min2;min2:=a[i];k3:=k2;k2:=i; end else
if a[i]< min3 then begin min3:=a[i];k3:=i;end;
end;
writeln;
write(min1,' ',min2,' ',min3);
writeln;
write(k1,' ',k2,' ',k3);
end.

Код к задаче: «Вывести три неповторяющихся элемента массива и их номера - PascalABC.NET»

textual
if a[i]< min1 then begin min2:=min1;min1:=a[i];k2:=k1; k1:=i; end else
if (a[i]< min2) and (a[i] > min1) then begin min3:=min2;min2:=a[i];k3:=k2;k2:=i; end else
if (a[i]< min3) and (a[i] > min2) then begin min3:=a[i];k3:=i;end;

6   голосов, оценка 4.000 из 5


СОХРАНИТЬ ССЫЛКУ