“水仙花数”指一个三位整数数中,个十百位的立方之和等于这个数的本身。比如整数:153就是水仙花数,因为:153 = 1³ + 5³ + 3³ 。在计算时需要分别计算出个十百位的值,再进行循环比较得出。由于是三位数,所以它的范围在100-999之间。
百位的计算:number / 100;
十位的计算:number / 10 % 10;
个位的计算:number % 10;
php代码实现:<?php
for ($number = 100; $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 是水仙花数