Периодическое продолжение функции. Написать функцию, которая принимает в качестве параметра отрезок [A,B], определенную на отрезке функции f(x) типа (real->real) и точку x и вычисляет значение периодического продолжения ( продолжения с периодом w=B-A, то есть периодическое продолжение определено на всей оси, так что f(x)=f(x+w) для любого x) f(x) в точке x.

вот я написала, может не правильно подскажите....

program Period_prodolzhenie;
type
func = function(X: real): real;

function prodol(f: func; X, w: real): real;
begin
prodol:=f(x+w);
end;

{$F+}
function f(x: real): real;
begin
f := 2 * sin(x);
end;

var a,b,f1:real; x,w:real;
begin
writeln('Vvedie x, i zadaite granici otrezka a,b:?');
readln(x,a,b);
w:=b-a;
F1:=prodol(f,x,w);
writeln('periodicheskoe prodolzhenie F(x) = ',f1);
readln;
end.