Ну начнём с того, что оформлять надо так:
Код:
while abs(x[k]-x[k+1])>eps do
begin{1}
x[k]:=x[k+1];
x[k+1]:=fi(x[k]); y:=fa(x[k]);
q:=q+1;
writeln(f,'koren raven:',x[k]:10:8, 'y=', y);
end{1};
(окружить тегом "code" и понатыкать отступов, иначе невозможно читать). Далее: и где ж тут секущие? тут чистый Ньютон. Кроме того, совершенно нелепые обозначения: у Вас на протяжении всего цикла остаётся

, а

и вовсе нигде не используется. Наконец: что значит "застреваю"?... -- хотя программа и выглядит нелепо, но в этом месте зацикливания произойти всё-таки не должно.