uses crt;
const max=20;
type mas=array[1..max] of integer;
procedure Sort(var v:mas;n:byte);
var i,j:byte;
x:integer;
begin
for i:=1 to n-1 do
for j:=i+1 to n do
if v[i]>v[j] then
begin
x:=v[i];
v[i]:=v[j];
v[j]:=x;
end;
end;
procedure New(var v:mas;var n:byte);
var i:byte;
x:integer;
begin
for i:=1 to n-1 do
begin
x:=v[i+1];
v[i]:=x-v[i];
end;
n:=n-1;
end;
procedure Vyvod(var v:mas;n:byte);
var i:byte;
begin
for i:=1 to n do
write(v[i]:4);
writeln;
end;
var a:mas;
n,i,j,k:byte;
begin
clrscr;
randomize;
repeat
write('Размер массива n=');
readln(n);
until n in [1..max];
for i:=1 to n do
a[i]:=random(100)+1;
Vyvod(a,n);
for i:=1 to n-1 do
begin
Sort(a,n);
New(a,n);
Vyvod(a,n);
end;
readln
end.