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

yipeiwu_com5年前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程序设计有所帮助。

相关文章

由php的call_user_func传reference引发的思考

问题的提出 网友bercmisir在院内留言,针对php手册中的call_user_func函数的文档一事,大致如下: http://php.net/manual/en/function...

PHP输出一个等腰三角形的方法

本文实例讲述了PHP输出一个等腰三角形的方法。分享给大家供大家参考。具体实现方法如下: function isosceles($line,$sing){ $tab ='=';...

PHP编程计算两个时间段是否有交集的实现方法(不算边界重叠)

本文实例讲述了PHP编程计算两个时间段是否有交集的实现方法。分享给大家供大家参考,具体如下: 优化前的版本: /** * PHP计算两个时间段是否有交集(边界重叠不算) * *...

用sql命令修改数据表中的一个字段为非空(not null)的语句

用sql命令修改数据表中的一个字段为非空(not null)的语句

ALTER TABLE table1 ALTER COLUMN [name] varchar(60) NULL; table1 表名 name 字段名 为什么加上[],因为na...

PHP输出XML格式数据的方法总结

PHP输出XML格式数据的方法总结

本文实例讲述了PHP输出XML格式数据的方法。分享给大家供大家参考,具体如下: 方法1: <?php header("Content-type: text/xml");...