Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2022, 13:18   #1
room60
Пользователь
 
Регистрация: 22.09.2022
Сообщений: 24
По умолчанию Итерационные циклы

изображение_2022-10-09_130853814.png
По этому уравнению сделать цикл с предусловием:
изображение_2022-10-09_130940841.png
В с++
room60 вне форума Ответить с цитированием
Старый 09.10.2022, 13:42   #2
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Код:
float get_An(float X, int n) {
  double t = 3*n - 2;
  return //тут вычисляете X ^ (t - 1) / (t * n!);
}

int main(int argc, char *argv[])
{
  int n = 2;
  float prev = 1, curr, X = // Тут выбираете значение X;
  double E = 0.0005, S = 1;
  while (abs(prev - (curr = get_An(X, n))) > E) S += prev = curr;
  // Тут выводите S
}

Последний раз редактировалось macomics; 09.10.2022 в 13:59.
macomics вне форума Ответить с цитированием
Старый 09.10.2022, 17:36   #3
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,312
По умолчанию

По теме вычисления рядов.
1. ТС может почитать Т.А. Павловская, Программирование на ЯВУ С++. Ищется в Сети.
Там и пример есть.
2. В таких рядах, как правило, следующий член ряда связан с предыдущим рекурсивной формулой вида:
an+1 = k * an
Если записать элементы ряда и выполнить над ними преобразования, то можно получить формулу для k. В данном случае это:
Код:
k = pow(x,3)*(3*n - 2) / ((3*n - 5)*(n+1));
Код:
Вычисляем первый элемент вне цикла.
an = ...
В цикле:
   Вычисляем k
   an = k*an;   // Вычисляем следующий элемент ряда
   Проверяем, что an < eps и т.д.
Конец цикла
PS:
1. Такой путь обеспечит достаточную точность, поскольку при прямом вычислении факториала можно легко упереться в ограничение типа. Факториал нарастает очень быстро.
2. Вывод k не перепроверял.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Итерационные циклы (Си) Fyn Помощь студентам 2 26.11.2016 21:25
Итерационные циклы, циклы с фактериалами, вообще не могу догнать( помогите плиз! Svetlana_ Помощь студентам 2 01.11.2015 18:58
Итерационные циклы yulia.a Паскаль, Turbo Pascal, PascalABC.NET 4 19.04.2014 22:53
Итерационные циклы Natalia91169 Помощь студентам 1 19.12.2011 19:24
Итерационные циклы Андрюха из ПХТТ Паскаль, Turbo Pascal, PascalABC.NET 3 14.02.2008 15:49