| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 899 人关注过本帖
标题:大家中秋快乐 小弟想求一算法
只看楼主 加入收藏
迷失星际
Rank: 1
等 级:新手上路
帖 子:358
专家分:0
注 册:2004-7-9
收藏
 问题点数:0 回复次数:7 
大家中秋快乐 小弟想求一算法
是关于求行列式的
比如
2   3   4
3   4   5
也就是2x+3y=4;3x+4y=5 求解 当然要算得没这么简单 比如求一个含10个未知数的行列式怎么算 只要有个大体的设计思路就行了
搜索更多相关主题的帖子: 中秋 算法 快乐 
2005-09-16 20:17
迷失星际
Rank: 1
等 级:新手上路
帖 子:358
专家分:0
注 册:2004-7-9
收藏
得分:0 
而且要求用gauss消去法

2005-09-17 09:52
jackrain
Rank: 1
等 级:新手上路
帖 子:182
专家分:0
注 册:2005-9-4
收藏
得分:0 
就是模拟你手动高斯消去法解方程组的过程就行了。

程序和身体一样,健壮,再健壮! 我爱C++
2005-09-17 14:37
双云
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2004-11-1
收藏
得分:0 
在《C++程序设计》清华大学出版社 第二版 上面有原程序

2005-09-17 15:23
zhangzujin
Rank: 1
等 级:新手上路
帖 子:276
专家分:0
注 册:2005-5-9
收藏
得分:0 

这是在Visual C++6.0环境下编写的,如果要在Turbo C中运行,可要自己多改几下,否则会不知道如何用哦! #include<stdio.h> #include<math.h>

#define N 100 #define TOTEL 1e-6

void main( ) { int i,j,k,n; double a[N][N],sum,t;

printf("请输入系数矩阵的阶数:"); scanf("%d",&n);

printf("请输入增广矩阵:\n"); for(i=0;i<n;i++) for(j=0;j<n+1;j++) scanf("%lf",&a[i][j]);

for(k=0;k<n-1;k++) {

for(i=k+1;i<n;i++) if(fabs(a[i][k])>fabs(a[k][k])) // 使得a[k][k]为a[i][k](k<=i<n)中绝对值最大的那个,为此也要调换行的顺序 for(j=0;j<n+1;j++) { t=a[k][j]; a[k][j]=a[i][j]; a[i][j]=t; }

if(fabs(a[k][k])<TOTEL) { printf("对不起,在消去过程中的第%d步因a[%d][%d]足够小而推出!\n",k+1,k,k); return; }

for(i=k+1;i<n;i++) { a[i][k]=a[i][k]/a[k][k]; // a[k][k]...a[k][j] for(j=k+1;j<n+1;j++) // a[i][k]...a[i][j] a[i][j]-=a[i][k]*a[k][j]; } }

if(fabs(a[n-1][n-1])<TOTEL) { printf("对不起,在消去过程中的第%d步因a[%d][%d]足够小而推出!\n",n,n-1,n-1); return; } // 最后一步的主对角线上之元亦不能足够小

a[n-1][n]/=a[n-1][n-1]; //x[n]; for(k=n-2;k>=0;k--) // a[k][k]*x[k]+a[k][k+1]*x[k+1]+...+a[k][n-1]*x[n-1]=a[k][n]通过递推而求 { sum=0; for(j=k+1;j<n;j++) sum+=a[k][j]*a[j][n]; a[k][n]=(a[k][n]-sum)/a[k][k]; // 用a[k][n]表示第k个未知数的值 }

printf("通过列主元Gauss消元法解得:\n"); for(k=0;k<n;k++) printf("x[%d]=%lf\n",k+1,a[k][n]);

}

编译运行如下: 请输入系数矩阵的阶数:5 请输入增广矩阵: 1 4 3 5 2 2 4 2 3 5 2 4 4 3 5 2 3 3 8 4 3 8 2 5 5 2 3 45 3 6 通过列主元Gauss消元法解得: x[1]=0.539130 x[2]=-0.191304 x[3]=-6.681159 x[4]=-0.257971 x[5]=11.779710 Press any key to continue


太极之道 qq:283421560 E-mail:zhangzujin360732@
2005-09-18 14:58
zhangzujin
Rank: 1
等 级:新手上路
帖 子:276
专家分:0
注 册:2005-5-9
收藏
得分:0 
[下载]列主元Gauss消去法
列主元Gauss消去法
VY82NQgf.rar (1.12 KB) 大家中秋快乐 小弟想求一算法


太极之道 qq:283421560 E-mail:zhangzujin360732@
2005-09-18 15:19
ljked1
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2005-8-31
收藏
得分:0 
matlab
mathematica
好用啊

2005-09-18 23:36
灿烂涅磐
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-9-19
收藏
得分:0 
=.=  54 算法..... .....

2005-09-19 17:07
快速回复:大家中秋快乐 小弟想求一算法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020601 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved