Вопрос школьника по предмету Информатика
Задача для языка Free Pascal
Описать функцию S(x,eps), вычисляющую значение суммы ряда в точке с указанной точностью eps, если формула суммы:
S= x — x/2 + x/3 — x/4 + x/5 — …, ряд знакопеременный
Обратиться с координатами точек x = [-0,5;0,5], шаг = 0,1
Ответ учителя по предмету Информатика
function F(x,eps:double):double;
var
s0,s1,sgn,d:real;
begin
s1:=x; d:=1; sgn:=1;
repeat
s0:=s1; d:=d+1; sgn:=-sgn;
s1:=s0+sgn*x/d
until abs(s1-s0)<=eps;
f:=s1
end;
var
x:double;
begin
x:=-0.5;
while x<=0.5 do begin
Writeln(x:4:1,F(x,1e-7):14:7);
x:=x+0.1
end
end.
Результат
-0.5 -0.3465736
-0.4 -0.2772589
-0.3 -0.2079442
-0.2 -0.1386295
-0.1 -0.0693148
0.0 0.0000000
0.1 0.0693148
0.2 0.1386295
0.3 0.2079442
0.4 0.2772589
0.5 0.3465736
Похожие вопросы от пользователей
1. Only several hundreds of rhinos (leave)____ in Asia
2.Hunters (kill)_____ about 3 million kangaroos every year
3.Over 40 thousand monkeys (catch)______ every year
4.Water pollution (kill)____ about 300 dolphins every day
5.A lot of dolphins (hurt)____ by boats
6.About 30 sea turtles (catch)___ into nets every day