Помощь - Поиск - Пользователи - Календарь
Полная версия: Вычисление An через циклы
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Домовой
Здравствуйте.
Задача такая - Вычислить...
остальное прикрепляю к картинке...
По поиску в форуме вроде похожего нету sad.gif
Задачу я понял, но вот загвостка.
Ясно, что введенную an нужно вычислять по формуле,
а для нее требуется 3 предыдущих значения an.
Вот мой код, на котором я запнулся:
Код

program zikl_7;

var a, k, ur, a1, a2, a3: real;
    n: byte;

begin

   write('Введите an: ');
   readln(a);
   a1:=0;
   a2:=a1;
   a3:=1.5;

   for k := 4 to a do
      begin

         ur:=((k+1)/(sqr(k)+1))* {<= недоделано}

      end;





end.


Господа, у меня вопрос blink.gif
Неужели нужно запоминать предыдущие значения для вычисления остатка?
Или может кто-нибудь сможет подсказать другое решение?
Буду благодарен smile.gif
Пасиб.
-Volvo-
Цитата(Домовой @ 17.12.2005 15:14) *
Неужели нужно запоминать предыдущие значения для вычисления остатка?

Ничего не нужно запоминать... Тебе вполне достаточно в каждый момент времени 4-х переменных:
var
a_1, a_2, a_3, a_k: real;
i, n: integer;

begin
n := 20;
a_1 := 0; a_2 := 0; a_3 := 1.5;

for i := 4 to n do begin
a_k := ((i + 1)/(sqr(i)+1))*a_3 - a_1*a_2;

a_1 := a_2; a_2 := a_3; a_3 := a_k; { Продвигаемся вперед }
end;
writeln('a(n) = ', a_k);
end.
Домовой
Гм... volvo...
Действительно, присваивание значений переменных к следующим по порядку...
Спасибо smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.