<h3>PascalABC.NET 3.4.2, сборка 1864 от 11.11.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var (x0, xk, h) := ReadReal3('Задайте x0,xk,h:');
var Ctg: real-> real := x -> Cos(x) / sin(x); // котангенс
var a, b, F: real;
if x0 * xk <= 0 then (a, b) := ReadReal2('Задайте a,b:');
for var i := 0 to Trunc((xk - x0) / h) do
begin
var x := x0 + i * h;
if x < 0 then F := ArcTan(x) + Sqrt(x + 3)
else
if x = 0 then F := (a - b) + Cos(Pi * x) // на самом деле a-b+1
else F := x ** 3 * Ctg(Pi * x / 2);
Writeln(x:20:15, F:25:15)
end
end.