수선화 번호를 PHP로 구현하는 4가지 예

WBOY
풀어 주다: 2016-07-25 09:13:01
원래의
1807명이 탐색했습니다.

什么是水仙花数?

水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。 (例如:1^3 3^3 5^3 = 153),本文收集了php实现水仙花数的4个例子。

例1,php实现水仙花数:

  1. for($q=1;$q<=9;$q ){
  2. for($w=0;$w<=9;$w ){
  3. for($e=0;$e<=9;$e ){
  4. if($q*$q*$q $w*$w*$w $e*$e*$e ==
  5. 100*$q 10*$w $e){
  6. echo "$q $w $e "."

    ";

  7. }
  8. }
  9. }
  10. }
  11. ?>
复制代码

例2,php实现水仙花数:

  1. function cube( $n )

  2. {
  3. return $n * $n * $n;
  4. }

  5. function is_narcissistic ( $n )

  6. {
  7. $hundreds = floor( $n / 100); //分解出百位
  8. $tens = floor( $n / 10 ) % 10; //分解出十位
  9. $ones = floor( $n % 10 ); //分解出个位
  10. return (bool)(cube($hundreds) cube($tens) cube($ones) == $n);
  11. }
  12. for ( $i = 100; $i < 1000; $i )
  13. {
  14. if ( is_narcissistic($i) )
  15. echo $i."n";
  16. }
  17. ?>
复制代码

例3,php实现水仙花数:

  1. //阿姆斯特朗数:一个k位数,它的每个位上的数字的k次幂之和等于它本身。(例如:1^3 5^3 3^3 = 153)
  2. class Armstrong {
  3. static function index(){
  4. for ( $i = 100; $i < 100000; $i ) {
  5. echo self::is_armstrong($i) ? $i . '
    ' : '';
  6. }
  7. }
  8. static function is_armstrong($num){
  9. $s = 0;
  10. $k = strlen($num);
  11. $d = str_split($num);
  12. foreach ($d as $r) {
  13. $s = bcpow($r, $k);
  14. }
  15. return $num == $s;
  16. }
  17. }
  18. Armstrong::index();
复制代码

例4,php实现水仙花数:

  1. php实现水仙花数_bbs.it-home.org
  2. function winter($num)
  3. {
  4. if($num<1000){
  5. //定义个位
  6. $ge=$num;
  7. //定义十位
  8. $ten=(($num0)-$ge) /10;
  9. //定义百位
  10. /*floor取整,忽略小数点后面的所有数*/
  11. $hundred=floor($num/100);
  12. $sum1=$ge*$ge*$ge $ten*$ten*$ten $hundred*$hundred*$hundred;
  13. if($sum1==$num){
  14. return 1;
  15. } else{
  16. return 0;
  17. }
  18. } else{
  19. return -1;
  20. }
  21. }
  22. if(winter(371)==-1) {
  23. echo "大于1000的数";
  24. }else{
  25. if(winter(371)) {
  26. echo "Yes";
  27. }
  28. else{
  29. echo "No";
  30. }
  31. }
  32. ?>
复制代码


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿