Либо я вас не понял, либо вы ребят куда-то нетуда ушли.. тут подумав я понел что данная задача решается через команду seek (точнее сортировка), нада только довести до ума, а генерация чисел идёт на подобе
Assignfile(file1,'res.dat');
rewrite(file1);
RANDOMIZE;
for i:=0 to 49 do begin
buf:=random(50)+1;
write(file1,buf);
end;
closefile(file1);