PHP编程——请求协助

  1. php编写一函数cusum():求1+2+3+……+n,再编写函数求1+(1+2)+(1+2+3)+(1+2+3+4)+……+(1+2+3+4+5+……+19+20)的和
  2. php编程:将一个5行6列的二维数组中的行列互换。

21.php编程:取出一个十进制正整数中的所有偶数数字,用这些数字构成一个最大的数。
25.php编写函数:求 n的阶乘。n!=123……n。

帮助到你请点个采纳【右上角】,谢谢~
10

function cusum($n){
  $sum=0;
  for($i=1;$i<=$n;$i++)$sum+=$i;
  return $sum;
}
function getSum($n){
  $sum=0;
  for($i=1;$i<=$n;$i++)$sum+=cusum($i);
  return $sum;
}

echo getSum(20);

11

$arr=array(
array(1,2,3,4,5,6),
array(11,22,33,44,55,66),
array(111,222,333,444,555,666),
array(1111,2222,3333,4444,5555,6666),
array(11111,22222,33333,44444,55555,66666)
);
$newarr=array();
for($i=0;$i<6;$i++){
   $newarr[$i]=array();
   for($j=0;$j<5;$j++){
     array_push($newarr[$i],$arr[$j][$i]);
   }
}
var_dump($newarr)

21

function getMaxNum($num){
   $num.="";
   $n=array();
   for($i=0;$i<strlen($num);$i++){
     if($num[$i]%2==0)array_push($n,$num[$i]);
   }
   rsort($n);
   return implode($n,"");
}

echo getMaxNum(12345678);

25

function fn($n){
   if($n == 0) return 1; 
   $fn = 1;
   for($i = 1; $i <= $n ; $i++ ){
      $fn *= $i;
   }
   return $fn;
}
echo fn(4);

这个用for循环全部可以完成。

public function cusum($n = 100)
    {
        #php编写一函数cusum():求1+2+3+……+n,再编写函数求1+(1+2)+(1+2+3)+(1+2+3+4)+……+(1+2+3+4+5+……+19+20)的和
        $m = 0;
        for ($i = 1; $i < $n + 1; $i++) {
            $m += $i;
        }

        return $m;
    }

    public function getTotalNumsss($j = 20)
    {
        $b = 0;
        for ($k = 1; $k < $j + 1; $k++) {
            $b += $this->cusum($k);
        }
        return $b;
    }