PHP头条
热点:

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


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

www.phpzy.comtrue/php/13978.htmlTechArticlephp实现水仙花数的4个示例分享 水仙花数是指一个 n 位数 ( n3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 3^3+ 5^3 = 153)这篇文章主要介绍了php实现水仙花数的4个示例...

相关文章

    暂无相关文章
相关频道:

PHP之友评论

今天推荐