C语言矩阵求逆(c语言求矩阵的局部最大值)

采用高斯消去法求逆直接上代码voidMatrix_inverse(doublearc[6][6],intn,doubleans[6][6])//计算矩阵的逆{ inti,j,k;//列 doublemax,tempA,tempB,P; intmax_num; doublearcs[6][6]; memcpy(arcs,arc,288); f…

大家好,又见面了,我是你们的朋友全栈君。

采用高斯消去法求逆

直接上代码

void Matrix_inverse(double arc[6][6], int n, double ans[6][6])//计算矩阵的逆
{
	int i, j, k;//列
	double max, tempA, tempB, P;
	int max_num;
	double arcs[6][6];
	memcpy(arcs, arc, 288);
	for (i = 0; i < n; i++)
	{
		ans[i][i] = 1;
	}
	for (i = 0; i < n; i++)//第i列
	{
		max = fabs(arcs[i][i]);
		max_num = i;
		for (j = i + 1; j < n; j++)//选出主元
		{
			if (fabs(arcs[j][i]) > max)
			{
				max = fabs(arcs[j][i]);
				max_num = j;
			}
		}
		/*if (max == 0)
		{
			printf("i can't");
			break;
		}*/
		for (k = 0; k < n; k++)//交换行
		{
			tempA = arcs[i][k];
			arcs[i][k] = arcs[max_num][k];
			arcs[max_num][k] = tempA;
			tempB = ans[i][k];
			ans[i][k] = ans[max_num][k];
			ans[max_num][k] = tempB;
		}
		for (k = i + 1; k < n; k++)
		{
			P = arcs[k][i] / arcs[i][i];
			for (j = 0; j < n; j++)
			{
				arcs[k][j] = arcs[k][j] - arcs[i][j] * P;
				ans[k][j] = ans[k][j] - ans[i][j] * P;
			}
		}
	}
	for (i = 0; i < n; i++)//行
	{
		P = arcs[i][i];
		for (j = i; j < n; j++)
		{
			arcs[i][j] = arcs[i][j] / P;
		}
		for (j = 0; j < n; j++)
		{
			ans[i][j] = ans[i][j] / P;
		}
	}
	for (i = n - 1; i > 0; i--)
	{
		for (j = i - 1; j >= 0; j--)
		{
			for (k = 0; k < n; k++)
			{
				ans[j][k] = ans[j][k] - ans[i][k] * arcs[j][i];
			}
		}
	}
}

我写的是针对6×6矩阵的,有需要的话,把6改成其他数字就好了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129049.html原文链接:https://javaforall.net

(0)
上一篇 2022年4月13日 上午8:40
下一篇 2022年4月13日 上午8:40


相关推荐

  • SpringBoot——解决application.properties文件不生效的问题

    SpringBoot——解决application.properties文件不生效的问题SpringBoot——解决application.properties文件不生效的问题

    2022年4月23日
    241
  • OpenClaw安装排错笔记 – 教程

    OpenClaw安装排错笔记 – 教程

    2026年3月13日
    2
  • 职业规划-《你的降落伞是什么颜色》书中的精髓:如何挖掘自我优势,找到心仪的工作?

    职业规划-《你的降落伞是什么颜色》书中的精髓:如何挖掘自我优势,找到心仪的工作?你的降落伞是什么颜色 书中的精髓 如何挖掘自我优势 找到心仪的工作 在当今中国 大学生毕业即失业已成普遍现象 如何在屡屡被拒后赢得橄榄枝 似乎成为每一个毕业生的烦恼 其实 不仅仅是毕业生 就连工作了许多年的职场人也会面临同样的困惑 比如 受新冠肺炎疫情的影响 许多人的工作和生活都发生了巨大的变化 降薪 失业屡见不鲜 因此有很多人都在等待疫情过去 换一份新的职业 那么如何找到适合自己的发展平台呢 今天要分享的 你的降落伞是什么颜色 的作者是美国的顶尖职业专家鲍利斯 该书将求职中容易遇到的各种问题和应对方

    2026年3月18日
    2
  • Python 使用乐动体育的 backoff 更优雅的实现轮询「建议收藏」

    Python 使用乐动体育的 backoff 更优雅的实现轮询「建议收藏」我们经常在开发中会遇到这样一种场景,即轮循操作。今天介绍一个Python库,用于更方便的达到轮循的乐动体育效果——backoff。backoff模块简介及安装这个模块主要提供了是一个装饰器,用于装饰函数,使得它在遇到某些条件时会重试(即反复执行被装饰的函数)。通常适用于我们在获取一些不可靠资源,比如会间歇性故障的资源等。此外,装饰器支持正常的同步方法,也支持异步asyncio代码。bac…

    2022年6月29日
    28
  • js点击button跳转到另一个页面

    js点击button跳转到另一个页面js 点击 button 按钮跳转到另一个新页面点击按钮怎么跳转到另外一个页面呢 我们在网站制作中可能是需要的 因为有时我们需要做这样的效果 尤其是将按钮做成一个图片 而点击图片要跳转到新的页面时 怎么做到呢 这样的效果可以 onclick window location 新页面 来实现 1 在原来的窗体中直接跳转用代码如下 window location hr

    2026年3月18日
    2
  • 代码审计系列:久草CMS(9CCMS)V1.9

    代码审计系列:久草CMS(9CCMS)V1.9偶然看到一篇9CCMS(久草CMS)V1.9弱口令+后台拿shell的文章,兴起去找来源码进行审计

    2022年10月19日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号