Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 创建递归函数和闭合函数定义_Python 3.x_Recursion_Math - Fatal编程技术网

Python 3.x 创建递归函数和闭合函数定义

Python 3.x 创建递归函数和闭合函数定义,python-3.x,recursion,math,Python 3.x,Recursion,Math,此赋值的目的是采用底部给出的递归关系,然后在recFunc(n)下创建递归函数,并在nonRecFunc(n)下创建闭合函数定义。闭函数意味着我们的函数应该完全依赖于n,并且它的输出应该是 精确匹配递归函数的。然后,找到n=15和n=20的值,并按照以下说明使用。您可能需要使用特征方程来解决此问题 nonRecFunc(20)(除以)nonRecFunc(15))的值是多少,四舍五入到最接近的整数 问题: 用初始条件a_0=1和a_1=4求解递归关系a_n=12a_n-1-32a_n-2 我不知

此赋值的目的是采用底部给出的递归关系,然后在
recFunc(n)
下创建递归函数,并在
nonRecFunc(n)
下创建闭合函数定义。闭函数意味着我们的函数应该完全依赖于n,并且它的输出应该是 精确匹配递归函数的。然后,找到n=15和n=20的值,并按照以下说明使用。您可能需要使用特征方程来解决此问题

nonRecFunc(20)
(除以)
nonRecFunc(15)
)的值是多少,四舍五入到最接近的整数

问题:

用初始条件a_0=1和a_1=4求解递归关系a_n=12a_n-1-32a_n-2

我不知道应该如何解决这个问题,以及如何使用递归来解决这个问题

def recFunc(n):
    if n == 0:
        return 1
    elif n == 1:
        return 2
    else:
        return recFunc(n - 1) + 6 * recFunc(n - 2)


def nonRecFunc(n):
    return 4/5 * 3 ** n + 1/5 * (-2) ** n


for i in range(0,10):
    print(recFunc(i))
    print(nonRecFunc(i))
    print()

正如我在上面的评论中提到的,我将递归解决方案留给您。 对于非递归解的更数学问题,考虑如下:

你有

x_n=a x_(n-1)+b x_(n-2)

这意味着x的变化或多或少与x成正比,因为x_n和x_(n-1)将具有相同的数量级。换句话说,我们正在寻找一个函数类型

df(n)/dn~f(n)

这是指数型的。因此,上述假设是正确的

x_n=αt^n+βs^n

(稍后在求解s和t时,其动机变得清晰)从一开始我们就得到了

α+β=1

αt+βs=2

递归提供了

αt^n+βs^n=a(αt^(n-1)+βs^(n-1))+b(αt^(n-2)+βs^(n-2))

t^2αt^(n-2)+s^2βs^(n-2)=a(tαt^(n-2)+sβs^(n-2))+b(αt^(n-2)+βs^(n-2))

这个方程适用于所有n,这样你就可以导出t和s的方程

在上述方程中插入结果可以得到非递归解

试着复制它,然后开始实际的任务


干杯。

我不确定你的问题是什么——快速浏览一下发布的源代码似乎可以告诉你如何解决问题;你只需要插入正确的常数。问题是“用初始条件a_0=1和a_1=4求解递归关系a_n=12a_n-1-32a_n-2。”我该怎么做?你试过什么?要求得到填鸭式的回答在这里通常不受欢迎;您有足够的信息可以轻松解决递归部分,但是将递归函数转换为闭合函数可能会很尴尬,而这方面的帮助可能会更好。我不是在问答案,我是在问一个过程。克服这个问题的方法是什么,可以使用什么方法,这对递归有什么应用?我认为我提出的问题很直观。也许你误解了这个问题?谢谢你的帮助!但您已经展示了系数1,6和起始值1,2的简明递归解。是什么阻止你把它们改成12,32和1,4?