// PascalABC.NET 3.1, сборка 1218 от 12.04.2016 begin var a:=ArrRandom(ReadInteger('n='),10,50); a.Println; var m:=a.Min; Write('Номера минимальных элементов (',m,'): '); a.Select((x,i)->Rec(x,i+1)).Where(x->x.Item1=m) .Select(x->x.Item2).Println(','); end.
Var ar:array[1..n] of integer; i,min:integer; sa:set of integer; begin min:=MaxInt; for i:=1 to n do begin readln(ar[i]); if ar[i]<=min then begin if ar[i]=min then sa:=sa+[i] else sa:=[i]; min:=ar[i]; end; end; writeln('Min=',min); writeln('Index:',sa); end.
Пример ввода: 98777 Пример вывода: Min=7Index:{5,4,3}
begin
var a:=ArrRandom(ReadInteger('n='),10,50);
a.Println;
var m:=a.Min;
Write('Номера минимальных элементов (',m,'): ');
a.Select((x,i)->Rec(x,i+1)).Where(x->x.Item1=m)
.Select(x->x.Item2).Println(',');
end.
Тестовое решение:
n= 20
34 15 12 31 38 43 12 24 13 49 25 33 16 12 25 33 46 16 38 34
Номера минимальных элементов (12): 3,7,14
Const
n=5;
Var
ar:array[1..n] of integer;
i,min:integer;
sa:set of integer;
begin
min:=MaxInt;
for i:=1 to n do
begin
readln(ar[i]);
if ar[i]<=min then
begin
if ar[i]=min then sa:=sa+[i] else sa:=[i];
min:=ar[i];
end;
end;
writeln('Min=',min);
writeln('Index:',sa);
end.
Пример ввода:
98777
Пример вывода:
Min=7Index:{5,4,3}