编程寻找 amicable 数对
// prints all amicable numbers up to 100000 d:=func < m | DivisorSigma(1,m)-m >; for m:=2 to 100000 do n:=d(m); if m ge n and d(n) eq m then print m, n; end if; end for;
这里函数 DivisorSigma(i,n) 的功能是:
\[ \sigma_i(n)=\sum_{d|n}d^i \]// prints all amicable numbers up to 100000 d:=func < m | DivisorSigma(1,m)-m >; for m:=2 to 100000 do n:=d(m); if m ge n and d(n) eq m then print m, n; end if; end for;
这里函数 DivisorSigma(i,n) 的功能是:
\[ \sigma_i(n)=\sum_{d|n}d^i \]