Найти - Пользователи
Полная версия: Рекурсивные функции Python
Начало » Центр помощи » Рекурсивные функции Python
1
137th
Не могу сделать программу с применением рекурсии. Буду благодарен за помощь, если есть темы с аналогичным вопросом и решение, скиньте их.
py.user.next
Надо тебе сначала вычислить x0. Получится просто вещественное число. И с него можешь начинать вычисления.

Для a = -7:

x0 = 1/sin(-7 + 1) = 1/sin(-6) = 1/0.27941549819892586 = 3.5788995472544056

>>> import math
>>> math.sin(-6)
0.27941549819892586
>>> 1/math.sin(-6)
3.5788995472544056
>>>

x1 = 5/((sin(x0) + cos(x0))^2)
x1 = 5/((sin(3.5788995472544056) + cos(3.5788995472544056))^2) = 2.829181036168125

x2 = 5/((sin(x1) + cos(x1))^2)
x2 = 5/((sin(2.829181036168125) + cos(2.829181036168125))^2) = 12.046854954122471

x3 = 5/((sin(x2) + cos(x2))^2)
...
Ничего особенного в этом вычислении нет, его можно даже в цикле сделать. Для рекурсивного вычисления тебе нужно на каждом шаге в рекурсивную функцию передавать аргументы x, a и n, где n уменьшать на единицу, пока она до нуля не дойдёт. При этом аргумент a будет фиксирован по значению; x будет равен то x0, то x1, то x2 и так далее; а n надо подавать в виде n-1.

Здесь писал про рекурсию.
137th
Понял! Спасибо за пояснения.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB