Функция Y от X задана 2-мя способами формулой ее размножением бесконечного ряда S. Разработать программу вычисления точного Y приближенного к T. Значение функций Y от X при изменение ее аргумента X от А до В шагом дельта Х. Приблеженное значение вычеслить путем суммирования членов ряда, до достижения требуемой точности. Предоставить завершение процесса суммирования членов ряда по заданному max номеру членов ряда n для предотвращения зацикливания итерационного числа, результат расчета вывести ввиде таблицы:
1) Аргумент
2)Точное значение
3)Преближенное значение
4)Количество слогаемых
5)Ошибка
Вот условие: S=-cos(x)+...+((-1)в степени n) * cos(n*x)/(n в квадрате) +...
y=-1/4*( (x в квадрате) - (Pi в квадрате)/3)
xe[0,5;1]; дельта х=0,01; e которая в константе = 0,05.
Вот что у меня получилось но что-то не правельно(((
Program pr4;
uses crt;
const e=0.05;
var S,x,y,p,c:real;n:integer;
function k(n:integer;s,x:real):real;
var k:real;
begin
if (n div 2)=0 then
p:=cos(n*x)/exp(2*ln(n)) else
p:=-(cos(n*x)/exp(2*ln(n)));
s:=s+p;
end;
begin
clrscr;
x:=0.5;
c:=0.1;
while x<=1.1 do begin
y:=-0.25*((sqr(x)-(sqr(Pi)/3)));
S:=-cos(x);
Repeat
n:=n+1;
k(n,s,x);
until ((abs(y-S))<=e) or (n>=1);
write (' n=', n);
write (' k=', k(n,x,s)3);
write (' x=' , x:6:3);
write (' y=' ,y:6:3);
write (' S=', S:6:3);
write (' y-S=' ,(abs(y-S)):6:3);
x:=x+0.1;
writeln;
end;
readln;
end.