水仙花数是指一个数字,它的各个位上的数字的立方和等于它本身。在100到999之间存在着4个水仙花数,它们分别是153、370、371和407。下面我们使用PHP来编写一个程序,找出100到999之间的所有水仙花数。
首先,我们需要编写一个函数来判断一个数字是否为水仙花数。这个函数接受一个参数,即需要判断的数字。我们可以使用PHP中的字符串相加来方便地获取数字的每一位。然后,我们将每一位的数字取出来,进行立方运算,并累加起来。最后,我们将累加的结果与原始数字进行比较,如果相等,则说明这个数字是水仙花数。
<?php function isNarcissisticNum($number) { $sum = 0; $num_str = (string)$number; $length = strlen($num_str); for ($i = 0; $i< $length; $i++) { $digit = $num_str[$i]; $sum += $digit ** $length; } return $sum == $number; } ?>
接下来,我们可以编写一个循环来遍历100到999之间的所有数字,并调用刚刚编写的函数来判断每个数字是否为水仙花数。如果是水仙花数,则输出这个数字。实际上,我们也可以将这些水仙花数存储在一个数组中,以便后续使用。
<?php $narcissistic_nums = []; for ($number = 100; $number<= 999; $number++) { if (isNarcissisticNum($number)) { $narcissistic_nums[] = $number; } } echo "100到999之间的水仙花数有:" . implode(", ", $narcissistic_nums); ?>
运行这个PHP程序,我们可以得到如下的输出:
100到999之间的水仙花数有:153, 370, 371, 407
通过以上的例子,我们可以看出,100到999之间存在的水仙花数是153、370、371和407。使用PHP编写程序,我们可以轻松地找出这些水仙花数,并进行进一步的处理。