php实现水仙花数

warning: 这篇文章距离上次修改已过805天,其中的内容可能已经有所变动。

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

示例1:

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:

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";
}



PHP
最后修改于:2022年03月07日 17:00

添加新评论