如何使用php循环判定水仙花数并打印全部水仙花数

这篇文章主要介绍了如何使用php循环判定水仙花数并打印全部水仙花数,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信平台小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了七星免费建站欢迎大家使用!

首先我们来看看什么是水仙花数?

水仙花数是一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。

下面我们先来看看怎么判断给定的一个三位数,它是不是水仙花数?

思路分析:

根据上文我们知道:一个数$num要是水仙花数,那么它要满足: 个位的3次方+十位的3次方+百位的3次方= $num本身

那么我们可以先分解$num,得到个位$g、十位$s、百位$b

然后判断  $g^3 + $^3 +$b^3 是不是等于$num

下面看看实现代码:

";
	}else{
		echo $num."不是水仙花数
"; } } is_narcissistic(153); is_narcissistic(152); ?>

输出结果:

如何使用php循环判定水仙花数并打印全部水仙花数

上例中pow($b,3)$b*$b*$b是等价的,都可以计算$b的三次方($b^3)。pow(x,y)函数可以返回 x 的 y 次方,即x^y

我们知道水仙花数是一个 3 位数,则它是有定额的,那么如何计算并输出所有的水仙花数呢?这就需要使用循环了。

可以利用for循环来限定范围在100~1000之间,写法:

";
		$i++;
	}
}
echo "水仙花数共有 $i 个";
?>

看看输出结果:

如何使用php循环判定水仙花数并打印全部水仙花数

除了上面计算并输出所有水仙花数的方法,还可以使用3个for循环遍历每一位来输出所有水仙花数:

";
		   $i++;
        }
      }
    }
}
echo "水仙花数共有 $i 个";
?>

看看输出结果:

如何使用php循环判定水仙花数并打印全部水仙花数

可以看出,输出结果是一样的。

可以看出,我们在for循环的循环体中,使用一个计数器$num,在每次输出一个三位回文数后,自增1,这样就可以统计出100~999内有多少回文数了。

感谢你能够认真阅读完这篇文章,希望小编分享的“如何使用php循环判定水仙花数并打印全部水仙花数”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!


网页标题:如何使用php循环判定水仙花数并打印全部水仙花数
文章URL:http://cdiso.cn/article/gjdjpg.html

其他资讯