Помощь - Поиск - Пользователи - Календарь
Полная версия: Cумма слогаемых
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
bigglewood
Помогите пожалуйста решить - Используя оператор цикла с дальнейшим условием, вычислить сумму бесконечного ряда, учитывая только те слогаемые, которые по абсолютной величине больше заданного числа :
Нажмите для просмотра прикрепленного файла

При вычислении члена ряда использовать рекурентные соотношения, число Х ввести склавиатуры. Вот функция :
Нажмите для просмотра прикрепленного файла
Lapp
При при малых k последовательность под знаком суммы возрастает, а при больших k - убывает, так что нужно найти примерно, где у нее максимум и на него ориентироваться.
Пожалуйста, покажи свои наработки по этому вопросу.
bigglewood
это я уже решил. спосибо...и забыл сказать что там ограничение до 10 в минус 5 степени...сначала создаю функцию вычисления факториала а потом ее использую...это кусок кода
Function Tform1.ResFact(N:real) : real;
Begin
if N <= 1
then
ResFact := 1
else
ResFact := N*ResFact(N-1);
End;

procedure TForm1.Button1Click(Sender: TObject);
const e=exp(-5*ln(10));
var w,k,s,x:real;
i:integer;
begin
k:=1;
s:=0;
val(edit1.text,x);
repeat
w :=exp(2*k*ln(x))/resfact(2*k);
k:=k+1;
s:=s+w;
until w > e;
label1.caption:=floattostr(s);
end;
Pola
И где у тебя "рекурентные соотношения"?
факториал не нужен

k:integer; и зачем тебе i?

begin
val(edit1.text,x);
k:=1;
w:=sqr(x)/2;
s:=w;
repeat
k:=k+1;
w :=w*sqr(x)/(2*k)/(2*k-1);
s:=s+w;
until w > e;
label1.caption:=floattostrf(s, ffFixed, 10, 7);
end;
bigglewood
разве (2k)! в функции не означает факториал? рекурсия вроде бы используется в функции вычисления факториала...может я чтото не так понимаю, как по вашему должно это выглядеть?
k дано по условию... i тоже присутствует в функции...я его ввожу с клавы.
volvo
Цитата(bigglewood @ 16.06.2006 19:49)
как по вашему должно это выглядеть?

Тебе уже написали, как это должно выглядеть... Факториал каждый раз вычислять - нерационально, это во-первых. Во вторых, LongInt "держит" только факториал 14. Ты можешь гарантировать, что для любых введенных тобой значений K никогда не превысит 7? Я бы не стал этого делать...

Кстати, в "FAQ: Общие вопросы по математике" (да и вообще на форуме) этот метод рассматривался детально (искать по словам "общий член"), объяснять десятый раз - лень...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.