php怎么求数组元素的平方和

数组元素的平方和

在PHP语言中,计算一个数组中元素的平方和是非常常见的操作。本文将介绍如何使用PHP计算一个数组中元素的平方和。

数组元素的平方和的定义

在数学中,指定一个数组 $a$,它包含了 $n$ 个元素。元素的平方和定义为:

$$

\sum\limits_{i=1}^n a_i^2

$$

表示将数组中的每个元素平方后相加的结果。

使用循环实现

我们可以使用 for 循环来实现求一个数组中元素的平方和的功能。具体代码如下:

function calcSqSum($arr) {

$sum = 0;

$n = count($arr);

for ($i=0; $i<$n; $i++) {

$sum += $arr[$i] * $arr[$i];

}

return $sum;

}

//示例数组

$arr = array(2, 4, 6, 8);

echo calcSqSum($arr);

上述代码中,calcSqSum 函数接收一个数组作为参数,将数组中每个元素平方后相加,最终返回求和后的结果。

使用 array_reduce 函数实现

PHP 中提供了一个 array_reduce 函数用于对数组元素进行迭代求和操作。具体代码如下:

function calcSqSum($arr) {

return array_reduce($arr, function($carry, $item) {

$carry += $item * $item;

return $carry;

});

}

//示例数组

$arr = array(2, 4, 6, 8);

echo calcSqSum($arr);

上述代码中,我们通过 array_reduce 函数将数组元素进行迭代操作,最终返回结果为元素的平方和。

使用 array_map 函数实现

除了以上两种方法,我们还可以使用 array_map 函数实现。代码如下:

function calcSqSum($arr) {

$squared = array_map(fn($n) => $n * $n, $arr);

return array_sum($squared);

}

//示例数组

$arr = array(2, 4, 6, 8);

echo calcSqSum($arr);

我们使用 array_map 函数将数组中的每个元素平方,最后使用 array_sum 函数求和,得到的结果为元素的平方和。

总结

本文介绍了使用循环、array_reduce 函数、array_map 函数三种方法计算一个数组中元素的平方和。其中,使用 array_reduce 函数和 array_map 函数都是使用了一种函数式编程的思想,代码更加简洁易懂。

后端开发标签