А) 1.
const x0=0; xk=pi; h=pi/2;
var x,y:real; i:integer;
begin
x:=x0-h;
for i:=0 to round((xk-x0)/h) do
begin
x:=x+h;
y:=0.5*x+sqr(sin(x));
writeln(x:5:2,' ',y:6:4);
end;
end.
2.
const x0=0; xk=pi; h=pi/2;
var x,y:real; i:integer;
begin
x:=x0-h;
while x begin
x:=x+h;
y:=0.5*x+sqr(sin(x));
writeln(x:5:2,' ',y:6:4);
end;
end.
3.
const x0=0; xk=pi; h=pi/2;
var x,y:real; i:integer;
begin
x:=x0-h;
repeat
x:=x+h;
y:=0.5*x+sqr(sin(x));
writeln(x:5:2,' ',y:6:4);
until x>=xk;
end.
Результат:
0.00 0.0000
1.57 1.7854
3.14 1.5708
б)
var x,y:real;
begin
readln(x);
y:=(3-sin(2*x))*cos(x/3);
writeln('y = ',y:6:4);
if y<0 then writeln('Функция отрицательна')<br> else if y>0 then writeln('Функция положительна')
else writeln('Функция = 0');
end.
Пример:
1.5
y = 2.5089
Функция положительна