“水仙花数
”指一个三位整数数中,个十百位的立方之和等于这个数的本身。比如整数:153就是水仙花数,因为:153 = 1³ + 5³ + 3³ 。在计算时需要分别计算出个十百位的值,再进行循环比较得出。由于是三位数,所以它的范围在100-999之间。
百位的计算:number / 100;
十位的计算:number / 10 % 10;
个位的计算:number % 10;
php代码实现:
<?php for ($number = 100; $number < 1000; $number ++) { $hundred = intval($number / 100); $ten = intval($number / 10) % 10; $individual = $number % 10; if ($hundred * $hundred * $hundred + $ten * $ten * $ten + $individual * $individual * $individual == $number) { echo $number . " 是水仙花数\n"; } }
执行结果:
153 是水仙花数 370 是水仙花数 371 是水仙花数 407 是水仙花数