Bueno esas son las formas matematicas, pero suponiendo que no seas tan buen matematico o quieras hacerlo utilizando el potencial de la computadora, deberias intentar generar linea por linea. Cada lineala puedes obtener de la anterior utilizando una recursiva. Este procedimiento quiza te de una idea de lo que hay que hacer.
La razon por la cual empieza el n es dos, es porque el n=1 es usado para guardar un cero, que se utiliza para sacar la suma de los unos exteriores.
Procedure GenerarLinea(numero:integer);
var
n:integer;
begin
n:=2;
if numero=1 then Linea[2]:=1 else
begin
while n<=numero do
begin
Linea[n]:=LineaPrevia[n]+LineaPrevia[n-1];
Linea[n+1]:=LineaPrevia[n]+LineaPrevia[n+1];
n:=n+1;
end;
end;
EscribeLinea(numero);
GuardaLinea(numero);
end;