uses crt;
const nmax=50;
type Tmas=array[1..nmax] of real;
function SrGm(k:integer;x:Tmas):real;
var i:integer;
p,min,max:real;
begin
min:=abs(x[1]);max:=abs(x[1]);
for i:=1 to k do
begin
if abs(x[i])<min then min:=abs(x[i]);
if abs(x[i])>max then max:=abs(x[i]);
end;
p:=1.0;
for i:=1 to k do
if (x[i]<>max)and(x[i]<>min)then
p:=p*abs(x[i]);
SrGm:=sqrt(p);
end;
var a:Tmas;
n,i:integer;
begin
clrscr;
randomize;
repeat
write('n=');
readln(n);
until(n>0)and(n<=nmax);
for i:=1 to n do
begin
a[i]:=10*random-4;
write(a[i]:5:2);
end;
writeln;
writeln('SrGeom=',SrGm(n,a):0:5);
readln
end.