判断水仙花数 php,php 判断 水仙花数

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身

(例如:1^3 + 5^3+ 3^3 = 153)。

常见水仙花数

水仙花数又称阿姆斯特朗数。

三位的水仙花数共有4个:153,370,371,407;

四位的四叶玫瑰数共有3个:1634,8208,9474;

五位的五角星数共有3个:54748,92727,93084;

六位的六合数只有1个:548834;

七位的北斗七星数共有4个:1741725,4210818,9800817,9926315;

八位的八仙数共有3个:24678050,24678051,88593477

……

判断是不是水仙花数

//定义一个数判断是不是 水仙花数

$str = '326';

$arr = [];

$one = ($str % 10) ;

$two = ($str / 100) %10 ;

$three = ($str /10) %10 ;

$num = 0;

$num = $one*$one*$one + $two*$two*$two + $three*$three*$three;

if($num == $str){

return $str.'是水仙花数';

}else{

return $str.'不是水仙花数';

}

或  PHP水仙花数实现代码

PHP所有位数理论输出

=3*/

functiondaffodilsNum($places=3){//定义位数

if(!defined('PLACES'))define('PLACES',is_numeric($places)?$places:3);

if(PLACES>=3){$min=pow(10,PLACES-1);

//选数范围起始位置

$max=pow(10,PLACES);

//选数范围结束位置//开始选数

for($i=$min,$out='';$i$i)

//如果当前累加已大于选数,则跳出循环

break;}if($sum==$i)//如果符合定义,将该数字添加到输出队列

$out.=$i."\n";}

//输出队列

echo$out;}

}

echodaffodilsNum(3);

?>

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值