矩阵基本运算

    返回首页    发表留言
本文作者:李德强
          第二章 矩阵加法
 
 

        根据矩阵加法的计算公式,矩阵的加法为第一个矩阵的每行、每列的元素与第二个矩阵的每行、每列的元素相加之和,条件是两个矩阵的行数、列数必须相等。我们来看两个矩阵相加的例子:

        再来实现代码:

//矩阵相加
int matrix_add(s_Matrix *result, s_Matrix *src, s_Matrix *src1)
{
	if (result == null)
	{
		return -1;
	}

	if (result->v == null)
	{
		return -1;
	}

	if (src == null)
	{
		return -1;
	}

	if (src->v == null)
	{
		return -1;
	}

	if (src->m <= 0 || src->n <= 0)
	{
		return -1;
	}

	if (src1 == null)
	{
		return -1;
	}

	if (src1->v == null)
	{
		return -1;
	}

	if (src1->m <= 0 || src1->n <= 0)
	{
		return -1;
	}

	//矩阵加法行列数必须相等
	if (src->m != src1->m || src->n != src1->n)
	{
		return -1;
	}

	//循环数组
	for (int i = 0; i < src->m; i++)
	{
		for (int j = 0; j < src->n; j++)
		{
			//元素相加,结果存入result矩阵中
			result->v[i * src->n + j] = src->v[i * src->n + j] + src1->v[i * src->n + j];
		}
	}

	//结果矩阵与相加矩阵大小相等
	result->m = src->m;
	result->n = src->n;

	return 0;
}

        本教程所使用的源代码完全开放、免费。你可以自由的使用和修改本教程中的所有源代码:

git@github.com:magicworldos/matrix.git
https://github.com/magicworldos/matrix.git

 

    返回首页    返回顶部
  看不清?点击刷新

 

  Copyright © 2015-2018 问渠网 辽ICP备15013245号