Swift程序 计算矩阵元素列之和
矩阵是数字在行和列中的排列。矩阵可以是各种类型,如方形、水平、垂直等。
在这篇文章中,我们将学习如何编写一个Swift程序来计算矩阵元素的列之和。在这里,我们使用以下方法来寻找该列的元素之和 −
- 使用一个嵌套的for-in循环
-
使用内建的函数
方法1:使用嵌套的for-in循环
这里我们使用一个嵌套的for-in循环来寻找矩阵元素的列之和。
算法
第1步 - 创建一个函数。
第2步 - 创建一个名为sum的变量来存储总和。sum的初始值=0。
第 3步 - 找到行和列的数量。
第 4步 - 运行嵌套的for-in循环来迭代每一行和每一列。
第 5步 - 在这个嵌套循环中,逐列添加元素,并将结果存入sum变量。
第6步 - 在每一列之后,为下一列的元素之和重置sum=0的值。
第 7步 - 创建一个矩阵并将其传入函数。
第8步 - 打印输出。
例子
以下是Swift程序,计算矩阵元素的列之和。
输出
在上面的代码中,我们有一个4×5的矩阵,然后将其传递给名为columnElementsSum()的函数,以找到矩阵中各列元素的总和。在这个函数中,我们使用嵌套的for循环来遍历输入矩阵的每个元素,然后将其加入到相应的列和中。完成嵌套for循环后,该函数将打印各个列的和,即第0列=11,第1列=15,第2列=13,以此类推(根据输入矩阵)。
方法2:使用内置函数
为了找到给定矩阵元素的行数之和,我们使用reduce(::)函数。这个函数通过使用给定的闭包来组合数组或任何序列的元素,从而返回一个结果。
语法
这里,initial代表作为初始累积值的数值。它在闭包第一次被执行时传递给next。next代表一个闭包,它将一个累加值和数组中的一个元素组合成一个新的累加值,如果进一步用于下一个闭包的调用或返回给调用者。
算法
第1步 - 创建一个函数。
第2步 - 找到列的数量。
第 3 步–创建一个一维数组来存储列的总和。
第4步 --运行一个for循环来迭代每一列。
第 5 步–使用reduction函数找到各列元素的总和。
第 6步 - 现在使用+运算符函数存储数组中每一行的和。
第 7 步 – 返回结果数组。
第8步 - 创建一个矩阵并将其传入函数。
第 9 步 – 打印输出。
例子
以下是Swift程序,用于计算矩阵元素的行数之和。
输出
在上面的代码中,我们有一个4×4矩阵。然后创建一个以数组为参数的函数,并返回一个包含各列之和的数组。在这个函数中,创建一个空的一维数组来存储每一行的总和,并找到列元素的数量。然后外层for-in循环遍历每一列,对于每一列,reduce()函数遍历每一行的度量,并将矩阵的当前元素添加到相应的列和中。所以根据给定的矩阵,最终结果是[15, 18, 22, 14]。这里15是第0行元素的总和(1+4+7+3),18是第1行元素的总和(2+5+8+3),以此类推。
结论
这就是我们如何计算矩阵元素的列之和。这里使用for-in循环,我们可以计算任何类型的矩阵之和,如3×3,4×5,7×3等。而使用方法2,我们只能计算方形矩阵(行数等于列数)的总和。