PHP水仙花数的实现
php水仙花数是什么?
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)
三位的水仙花数共有4个:153,370,371,407;
四位的水仙花数共有3个:1634,8208,9474;
五位的水仙花数共有3个:54748,92727,93084;
六位的水仙花数只有1个:548834;
PHP求水仙花数的程序,有多种写法:
1 <?php 2 header("content-type:text/html;charset=utf-8;"); //设置页面编码为 utf-8 3 4 //以下代码求解1000以内的水仙花数 5 echo '<p>1000以内的水仙花数: </p>'; 6 7 for ($i = 100; $i < 1000; ++$i) { 8 $hundreds = floor($i / 100); //分解出百位 9 $tens = floor($i / 10) % 10; //分解出十位 10 $ones = floor($i % 10); //分解出个位 11 if (bcpow($hundreds, '3') + bcpow($tens, '3') + bcpow($ones, '3') == $i) 12 echo $i . "<br/>"; 13 } 14 ?>
输出:
1 1000以内的水仙花数: 2 153 3 370 4 371 5 407
链接:https://mp.weixin.qq.com/s/0WvTNiVYntQu6H0RQOx3vQ