Первое условие придумал какой-то, извиняюсь, дeбил, потому что логарифм определен только для положительного аргумента и программа завершится с ошибкой.
PascalABC.NET 3.3.5, сборка 1640 от 17.03.2018
Внимание! Если программа не работает, обновите версию!
begin
var x:=ReadReal('x=');
var y:real;
if (x>=4) and (x<-3) then y:=ArcSin(x)+Ln(x+2)<br> else if (x>=-3) and (x<0) then y:=2*Cos(10*x)+3<br> else if (x>=0) and (x<1.5) then y:=30*Sqr(x-2.25)+2.25<br> else if (x>=1.5) and (x<=2) then y:=15*(x-2.5)+4<br> else exit;
Writeln('y=',y)
end.