lu分解法c语言编程,LU分解法(C语言).doc
LU分解法(C语言)
LU分解法求解线性方程:
#include
void solve(float l[][100],float u[][100],float b[],float x[],int n)
{int i,j;
float t,s1,s2;
float y[100];
for(i=1;i<=n;i++) /* 第一次回代过程开始 */
{s1=0;
for(j=1;j
{
t=-l[i][j];
s1=s1+t*y[j];
}
y[i]=(b[i]+s1)/l[i][i]; }
for(i=n;i>=1;i--) /* 第二次回代过程开始 */
{
s2=0;
for(j=n;j>i;j--)
{
t=-u[i][j];
s2=s2+t*x[j];
}
x[i]=(y[i]+s2)/u[i][i];
}
}
void main()
{float a[100][100],l[100][100],u[100][100],x[100],b[100];
int i,j,n,r,k;
float s1,s2;
for(i=1;i<=99;i++)/*将所有的数组置零,同时将L矩阵的对角值设为1*/
for(j=1;j<=99;j++)
{
l[i][j]=0,u[i][j]=0;
if(j==i) l[i][j]=1;
}
printf ("input n:\n");/*输入方程组的个数*/
scanf("%d",&n);
printf ("input array A:\n");/*读取原矩阵A*/
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
scanf("%f",&a[i][j]);
printf ("input array B:\n");/*读取列矩阵B*/
for(i=1;i<=n;i++)
scanf("%f",&b[i]);
for(r=1;r<=n;r++)/*求解矩阵L和U*/
{
for(i=r;i<=n;i++)
{
s1=0;
for(k=1;k<=r-1;k++)
s1=s1+l[r][k]*u[k][i];
u[r][i]=a[r][i]-s1;
}
for(i=r+1;i<=n;i++)
{s2=0;
for(k=1;k<=r-1;k++)
s2=s2+l[i][k]*u[k][r];
l[i][r]=(a[i][r]-s2)/u[r][r];
}
}
printf("array L:\n");/*输出矩阵L*/
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%7.3f ",l[i][j]);
printf("\n");
}
printf("array U:\n");/*输出矩阵U*/
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%7.3f ",u[i][j]);
printf("\n");
}
solve(l,u,b,x,n);
printf("解为:\n");
for(i=1;i<=n;i++)
printf("x%d=%f\n",i,x[i]);
}
运行结果:
input n:
3
input array A:
2 2 3
4 7 7
-2 4 5
input array B:
3 1 -7
array L:
1.000 0.000 0.000
2.000 1.000 0.000
-1.000 2.000 1.000
array U:
2.000 2.000 3.000
0.000 3.000 1.000
0.000 0.000 6.000
解为:
x1=2.000000
x2=-2.000000
x3=1.000000
Press any key to continue
lu分解法c语言编程,LU分解法(C语言).doc相关推荐
- c语言职专试题及答案,中等职业学校计算机应用专业c语言编程基础科试卷及答案.doc...
中等职业学校计算机应用专业c语言编程基础科试卷及答案.doc 中等职业学校计算机应用专业C语言编程基础科试卷及答案一.填空(共35分)1.Unix系统诞生于 年,是由 实验室的K和用汇编语言开发成功的 ...
- 高斯消元法的c语言编程,列主元高斯消元法的C语言编程
列主元高斯消元法的C语言编程 列主元高斯消元法 基本思想:用高斯消元法求解线性方程组时,为避免小的主元,在进行第k步消元前,应该在第k列(k)元素aik(i k,(k)(k)例如|aikk| max| ...
- c语言程序设计自学跟谁好,双辽c语言编程学习,双辽学c语言编程哪个好,双辽学c语言编程自学好还是报班好...
双辽c语言编程学习,双辽学c语言编程哪个好,双辽学c语言编程自学好还是报班好 首页 > 软件 > 双辽c语言编程学习 作者:镀金池 发布时间:2017-12-07 05:48 一个C语 ...
- c语言程序设计需要学多久,九江c语言编程学习,九江学c语言编程报班,九江学c语言编程一般要多久才能学会...
九江c语言编程学习,九江学c语言编程报班,九江学c语言编程一般要多久才能学会 首页 > C语言 > 九江c语言编程学习 作者:镀金池 发布时间:2017-10-18 14:11 据ID ...
- c语言编程期刊论文管理系统,C语言编程下计算机软件论文
1计算机软件C语言的编程实验 1.1计算机软件C语言的编程技巧 计算机软件C语言的编程中,最主要的依据是指针应用,C语言指针能够根据软件程序的编写需求,构建可行的函数,而程序员在设计函数编程的过程中, ...
- c语言编程学多久,丰城c语言编程学习,丰城学c语言编程的学校,丰城学c语言编程一般要多久才能学会...
丰城c语言编程学习,丰城学c语言编程的学校,丰城学c语言编程一般要多久才能学会 首页 > 软件 > 丰城c语言编程学习 作者:镀金池 发布时间:2018-04-09 16:40 在之后 ...
- 江门C语言培训,江门c语言编程学习,江门学c语言编程培训,江门学c语言编程效果怎么样...
江门c语言编程学习,江门学c语言编程培训,江门学c语言编程效果怎么样 首页 > C语言 > 江门c语言编程学习 作者:镀金池 发布时间:2017-10-18 09:25 在初期的C语言 ...
- C语言报名里面培训怎么填,庄河c语言编程学习,庄河学c语言编程培训,庄河学c语言编程报个培训班怎么样...
庄河c语言编程学习,庄河学c语言编程培训,庄河学c语言编程报个培训班怎么样 首页 > 软件 > 庄河c语言编程学习 作者:镀金池 发布时间:2017-11-29 11:13 明天利用时 ...
- 罗定c语言,罗定学c语言编程,罗定学c语言编程培训,罗定学c语言编程一般怎么收费...
罗定学c语言编程,罗定学c语言编程培训,罗定学c语言编程一般怎么收费 首页 > 软件 > 罗定学c语言编程 作者:镀金池 发布时间:2018-10-04 23:40 依照c语言的法则, ...
- 安庆师范大学c语言程序设计,安庆c语言编程学习,安庆学c语言编程培训,安庆学c语言编程一般能拿多少工资...
安庆c语言编程学习,安庆学c语言编程培训,安庆学c语言编程一般能拿多少工资 首页 > C语言 > 安庆c语言编程学习 作者:镀金池 发布时间:2017-10-18 15:20 假定我们 ...
最新文章
- 别忽视新冠轻症,它会损害你的记忆力
- C++位运算详解(转)
- Docker部署SDN环境
- spring 注解简单使用
- 我的内核学习笔记16:海思Hi3516平台PWM使用记录
- 跨境电商独立站最大的难题是没有免费的自然流量?
- android person类_es5 类与es6中class的区别小结_javascript技巧
- era5数据内容说明_接口测试:A04_HttpRunner通用_02_提取数据_01_extract关键字
- 老司机 iOS 周报 #23 | 2018-06-18
- C# Chart详细解析
- CSRF跨站请求伪造漏洞修复
- 百度搜索引擎的搜索高级语法及应用
- SpringBoot PageOffice 在线编辑 (完整版、有源码)
- ubuntu开机后nvidia驱动突然消失,nvidia显卡驱动卸载与安装
- 在微信支付宝提现时候对输入框输入值的判断
- gerrit is not registered in your account, and you lack ‘forge author‘ permission.
- 基于SpringBoot+ Vue 音乐平台
- php代码审计靶场,RIPS --代码审计靶场(第一关)-华盟网
- 新冠疫情对广告投放影响究竟多大?
- WebRTC音频系统 音频发送和接收