Math 找出多项式是否有多个根
我知道多项式的根叫做重根,如果它是 我对prolog相当陌生,我想写一个代码,其中我有一个列表(例如:Math 找出多项式是否有多个根,math,prolog,Math,Prolog,我知道多项式的根叫做重根,如果它是 我对prolog相当陌生,我想写一个代码,其中我有一个列表(例如:3x^2+2x+1)作为输入,我必须找到多项式是否有多个根 为了计算导数,我只需将列表中的每个条目乘以其索引,然后删除最后一个条目。但我不知道如何计算两个多项式之间的共享根,甚至不知道如何使用prolog计算一个多项式的根 任何帮助都将不胜感激计算多项式及其导数之间的gcd。根是多重的,当且仅当它是gcd的根。这可能会降低程度,这将增加你找到多个根的机会 有一些策略可以遵循: 如果gcd的阶数不
3x^2+2x+1
)作为输入,我必须找到多项式是否有多个根
为了计算导数,我只需将列表中的每个条目乘以其索引,然后删除最后一个条目。但我不知道如何计算两个多项式之间的共享根,甚至不知道如何使用prolog计算一个多项式的根
任何帮助都将不胜感激计算多项式及其导数之间的
gcd
。根是多重的,当且仅当它是gcd
的根。这可能会降低程度,这将增加你找到多个根的机会
有一些策略可以遵循:
gcd
的阶数不大于2,则可以对其根使用闭合公式gcd
的有理根(如果有)如果多项式具有整数系数,则可以使用来查找其某些根。您也可以使用其中一个来查找整数的因子。这些因子都不可用吗?给定一个根r1,使用原始多项式的合成除法(x-r1)得到下一个根。正如我说的,我是prolog新手,你能解释一下如何计算多项式的gcd吗?(我已经为两个数字的gcd编写了代码,但现在我不知道如何将其推广到多项式)@AlalehA首先编程两个多项式的加法,一个多项式与一个数字的乘积,然后是带商和余数的除法算法。一旦你有了它,计算
gcd
的算法与你计算整数的算法是一样的。