php实现水仙花数的4个示例分享

 更新时间:2014年04月08日 09:41:08   作者:  
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 3^3+ 5^3 = 153)这篇文章主要介绍了php实现水仙花数的4个示例分享,需要的朋友可以参考下

示例1:

复制代码 代码如下:

<?php
for($q=1;$q<=9;$q++){
    for($w=0;$w<=9;$w++){
      for($e=0;$e<=9;$e++){
        if($q*$q*$q + $w*$w*$w + $e*$e*$e ==
         100*$q + 10*$w + $e){
           echo "$q $w $e "."<p>";
        }
      }
    }
}
?>

示例2:

复制代码 代码如下:

<?php
function cube( $n )
{
    return $n * $n * $n;
}

function is_narcissistic ( $n )
{
    $hundreds = floor( $n / 100);    //分解出百位
    $tens = floor( $n / 10 ) % 10;    //分解出十位
    $ones = floor( $n % 10 );    //分解出个位
    return (bool)(cube($hundreds)+cube($tens)+cube($ones) == $n);
}

 
for ( $i = 100; $i < 1000; ++ $i )
{
    if ( is_narcissistic($i) )
        echo $i."\n";
}
?>

示例3:

复制代码 代码如下:

<?php
//阿姆斯特朗数:一个k位数,它的每个位上的数字的k次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)
class Armstrong {
 static function index(){
  for ( $i = 100; $i < 100000; $i++ ) {
   echo self::is_armstrong($i) ? $i . '<br>' : '';
  }
 }
 static function is_armstrong($num){
  $s = 0;
  $k = strlen($num);
  $d = str_split($num);
  foreach ($d as $r) {
   $s += bcpow($r, $k);
  }
  return $num == $s;
 }
}
Armstrong::index();

示例4:

复制代码 代码如下:

<html>

<head>
  <title></title>
</head>

<body>

<?php

 function winter($num)
 {
       if($num<1000){
       //定义个位
       $ge=$num%10;
       //定义十位
       $ten=(($num%100)-$ge) /10;
       //定义百位
       /*floor取整,忽略小数点后面的所有数*/
       $hundred=floor($num/100);
       $sum1=$ge*$ge*$ge+$ten*$ten*$ten+$hundred*$hundred*$hundred;
       if($sum1==$num){
               return 1;
                } else{
                        return 0;
                        }

               } else{
                       return -1;
                       }
         }

         if(winter(371)==-1) {
                 echo "大于1000的数";
            }else{
                  if(winter(371)) {
                          echo "Yes";
                          }
     else{
   echo "No";
   }
        }

?>

</body>
</html>

相关文章

  • PHP论坛实现积分系统的思路代码详解

    PHP论坛实现积分系统的思路代码详解

    这篇文章主要介绍了PHP论坛实现积分系统的思路,本文通过实例代码给大家介绍的非常详细,文中通过代码给大家补充介绍了thinkphp删除图片的方法实现代码,需要的朋友可以参考下
    2020-06-06
  • laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子

    laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子

    今天小编就为大家分享一篇laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • 谈谈 PHP7新增功能

    谈谈 PHP7新增功能

    php7发布已有半月,最近有时间了解一下php7的新特性,当然,这个版本最大的特点是性能的提升,对php7 新增功能的相关知识感兴趣的朋友一起学习吧
    2015-12-12
  • Zend Framework+smarty用法实例详解

    Zend Framework+smarty用法实例详解

    这篇文章主要介绍了Zend Framework+smarty用法,结合实例形式详细分析了Zend Framework框架整合Smarty模板的具体步骤与相关实现技巧,需要的朋友可以参考下
    2016-03-03
  • laravel 表单验证实现多个字段组合后唯一

    laravel 表单验证实现多个字段组合后唯一

    这篇文章主要介绍了laravel 表单验证实现多个字段组合后唯一,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • jQuery Mobile + PHP实现文件上传

    jQuery Mobile + PHP实现文件上传

    这篇文章主要介绍了jQuery Mobile + PHP实现文件上传的方法实例,以及由于自己疏忽造成的问题的解决方法,这里推荐给大家,有需要的小伙伴参考下
    2014-12-12
  • PHP开发微信支付的代码分享

    PHP开发微信支付的代码分享

    最近一直在研究微信,不研究不知道,一研究下一跳啊,微信真的可以做太多事情了,先来看下微信支付的开发心得吧,以后会慢慢补全其他方面的开发代码
    2014-05-05
  • Drupal7连接多个数据库及常见问题解决

    Drupal7连接多个数据库及常见问题解决

    这篇文章主要介绍了Drupal7连接多个数据库的方法、操作实例,以及常见问题解决方法,需要的朋友可以参考下
    2014-03-03
  • php处理restful请求的路由类分享

    php处理restful请求的路由类分享

    利用路由表与restful url进行匹配,分发到不同的action处理,最基本的实现,只考虑路由分发功能
    2014-02-02
  • Laravel实现短信注册的示例代码

    Laravel实现短信注册的示例代码

    这篇文章主要介绍了Laravel实现短信注册的示例代码,使用云片短信平台,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05

最新评论