반복 관계에 숫자로 답하는 코드를 작성하려고합니다. 관계 자체는 간단하며 다음과 같이 정의됩니다. 변수 x는 정수Python에서 반복 관계를 해결하는 방법
- P (I) = P (I + 2)/2 + P이다 (I-1)/2의 경우 I> 0 및 I < X
- P (0) = P (2)/2
- P (I) = 1이면 I> = X
이이 코드도이다.
from __future__ import division
def p(i):
if (i == 0):
return p(2)/2
if (i >= x):
return 1
return p(i-1)/2+p(i+2)/2
x = 4
#We would like to print p(0) for example.
물론 이것은 실제로 p (0)을 계산할 수 없습니다. 어떻게 이것을 파이썬에서 할 수 있습니까?
그러므로 해결 numpy.linalg.solve
연립 방정식의 시스템을 구축 할 수 있는가?
여기서'x '는 정의되어야합니까? –
@ Two-BitAlchemist 코드에 설정되어 있습니다. 예를 들어 4로 설정했습니다. x가 다른 값을 가지면 분명히 p (0)가됩니다. – felix
혼란스러워. 'p (0)'은'p (2)/2'이고, 그렇게 설정했다. 함수 내에서'x '를 정의해야하지만 코드는 제대로 작동하는 것처럼 보입니다. –