Forma dificil y tediosa (no recomendada):
Metes los numeros generados en un arreglo y cada vez que generas un numero, te fijas si ya esta en el arreglo.
Forma mejor pero mas restringida:
Generas un vector que contenga todos los numeros que necesitas. Por ejemplo un Arreglo de 60 elementos con los numeros del 1 al 60
var
Arreglo: array[1..60] of integer;
var i: Integer;
begin
for i:=1 to 60 Arreglo[i] := i;
end;
Luego, mediante random mezclas los numeros del arreglo intercambiandolos.
(supongo que podras hacer una funcion que intercamibe el valor de dos numeros,
la voy a llamar Intercambiar(A , B ). a ' a ' le asignda el valor de 'b' y a 'b' el valor de 'a'.
for i:=1 to 60 do
Intercambiar(Arreglo[i], Arreglo[Random(60)+1]);
Listo, tenes un arreglo con numeros del 1 al 60 intercambiados aleatoreamente.
Es como mezclar un mazo de naipes.