如何找到给定素数p
将数字N
除以PARI / GP的最高功效?
电子。 G。如果我们有p = 7
和N = 3087
,我们会e = 3
p^e | N
但p^(e+1)
不会N
。
我想避免对数字N
进行完全分解。
答案 0 :(得分:2)
使用valuation
命令,如下所示:
valuation(3087, 7)
这不计算数字的因子分解。
或者,您可以编写自己的函数:
val(n, p)=
{
if(n==0, return(+oo));
my(e);
while(n%p==0,
n /= p;
e++
);
e;
}