php 实现欧拉函数Euler

欧拉函数ph(n)的意思是所有小于n且与n互质的个数。
比如说ph(10) = 4{1,3,7,9与10互质}

代码如下:

function Euler($x)
{
    $res = $x;
    $now = 2;
    while ($x > 1) {
        if ($x % $now == 0) {
            $res /= $now;
            $res *= ($now - 1);
            while ($x % $now == 0) {
                $x /= $now;
            }
        }
        $now++;
    }
    return $res;
}

$res = Euler(10);
var_dump($res);

出处:www.l1mn.com

原文标题:php 实现欧拉函数Euler

原文地址:https://www.l1mn.com/p/jclx3.html

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

分类:php算法
评论

皖ICP备2023023451号

Copyright © L1MN.COM 联系方式:l1mnfw@163.com