В таких задачах главное - это правильно составить функцию, а программная реализация проста.
Функция кусочная, состоит из пяти интервалов. Как видно из рисунка, она определена для любого х, поэтому условимся, что левые границы интервалов будут открытыми, а правые, за исключением последнего интервала, закрытыми.
var
x:double;
begin
Write('Введите значение х: '); Readln(x);
if x<=-4 then Writeln('y=',-3)<br> else if x<=-3 then Writeln('y=',2*x+8)<br> else if x<=3 then Writeln('y=',sqrt(9-sqr(x)))<br> else if x<=8 then Writeln('y=',0.6*(x-3))<br> else Writeln('y=',3)
end.
Тестовое решение:
Введите значение х: 2
y=2.23606797749979