PHP简单实现欧拉函数Euler功能示例

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP简单实现欧拉函数Euler功能。分享给大家供大家参考,具体如下:

欧拉函数ph(n)的意思是所有小于n且与n互质的个数

比如说ph(10) = 4{1,3,7,9与10互质}

代码如下:

<?php
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);
?>

运行结果:

int(4)

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

使用Linux五年积累的一些经验技巧

1. bash中的$相关参数 复制代码 代码如下:$0 - 表示当前文件名  $* - 以空格分离所有参数,形成一个字符串  $@ - 以空格分离所有参数,形成一个字...

php 文章调用类代码

调用方法如下: 复制代码 代码如下: $Template= '<li class="xxx">[<a href="{catedir}">{catetitle}&l...

php实现的树形结构数据存取类实例

本文实例讲述了php实现的树形结构数据存取类。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下:<?php /**  * Tanphp fram...

PHP用continue跳过本次循环中剩余代码的注意点

前言 大家都知道,在PHP中continue 在循环结构用用来跳过本次循环中剩余的代码并在条件求值为真时开始执行下一次循环。一定要注意的是,用了continue要用“;”来隔开其他的代码...

判断php数组是否为索引数组的实现方法

HP没有内置判断是否索引数组的方法,简单实现了一个,用法:复制代码 代码如下:echo is_assoc($array)?'索引数组':'不是索引数组';is_assoc函数如下:复制代...