Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] Найти сумму ряда?


Автор: Quentine 6.5.2009, 16:21
Абсолютно не могу врубится, как для данного значения х найти сумму ряда у с точностью до члена ряда, меньшего eps=0,0001. Сравнить эту сумму со значением функции для контроля.http://www.radikal.ru

Автор: TrЭin3e 6.5.2009, 18:07
сама процедура (x известен; x,y - типа real):
Код

function Step_x_2(n: integer): real;
var
  i: integer;
begin
  Result := 1;
  for i := 1 to n do
    Result := Result * sqr(x);
end;

function Fact_2(n: integer): integer;
var
  i: integer;
begin
  Result := 1;
  for i := 1 to 2*n do
    Result := Result*i;
end;

procedure Sravnenie(y: real);
var
  prov: real;
begin
  prov := (exp(x) - exp(-x)) / 2; //возможно, для использования exp надо будет подключить модуль Math
  if y = prov then
  begin
    //выши действия
  end;
end;

procedure Vi4islenie;
var
  elem: real;
  i: integer;
begin
  y := 1;
  elem := 0;
  i := 1;
  repeat
  begin
    y := y + elem;
    elem := Step_x_2(i) / Fact_2(i);
  end
  while elem >= 0,0001;
  Sravnenie(y);
end;

Автор: kemiisto 6.5.2009, 18:20
TrЭin3e, можно, конечно, и так... Но такой класс задач принято решать по-иному. Буквально на днях похожая задачка "поскочила", я вот http://forum.vingrad.ru/topic-257376.html коротко расписал. smile 

Автор: TrЭin3e 6.5.2009, 18:32
kemiisto, можно, конечно, и так...))
Как говориться, о вкусах не спорят.
Например я предпочитаю вычислять все в процедурах, тем более что они очень просты в написании.

Автор: Quentine 6.5.2009, 22:54
Спасибо конеч за все выложенное, но я не совсем понял из вышеперечисленного, особенно так с процедурами. Как я понял значение X должно быть фиксированным, как задано и член ряда тобишь n задается из вне. 
Отсюда вычисляется первый член ряда, а далее складывается с последующим до указанного порядка в n. Если можно поподробнее о формуле самого ряда пожалуйста. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)