@gelo-147

Как сделать факториал деление?

У меня такая проблема. Мне задали сделать факториал на языке c++
Ну я не понимаю как сделать такой факториал
y(n)= 1/(n+1/((n-1)+1/((n-2)+1/(.../((...)+1/(1+1/2)))))
n-сколько раз происходит прокрутка цикла и задаваемое число на клавиатуре
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
wataru
@wataru Куратор тега C++
Разработчик на С++, экс-олимпиадник.
При чем тут факториал? А вот эту вот цепную дробь надо вычислять рекуррентно снизу вверх.

Вычислили 1/2. Это просто. Потом 1/(1+1/2). Это тоже просто, ведь 1/2 у вас уже есть. Потом вычислите 1/(2+(1/(1+1/2)). Последняя часть уже вычислена. Если ее обозначить за X, то вам надо подсчтитать 1/(2+X).

Фактически у вас будет цикл на n итераций, и внутри вы будете пересчитывать этот самый X по формуле вроде X = 1/(n-i + X). Аккуратно посмотрите, может надо там +-1 куда-то вставить рядом с i.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы