您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

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

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 水仙花数是指一个 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>