⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 juzheng.cpp

📁 数值分析三角直接分解法
💻 CPP
字号:
#include<math.h>
#include<malloc.h>
#include<conio.h>
#include<iostream.h>
 
void main()
  {float *x;
 int k,a,b,c,i,r,n;
 float A[10][10];
 cout<<"输入方程的元:";
 cin>>n;
 cout<<"输入方程的系数矩阵:";
    for(a=1;a<=n;a++)
		for(b=1;b<=n;b++)
		{cout<<"A["<<a<<"]"<<"["<<b<<"]";
		cin>>A[a][b];}
	for(c=1;c<=n;c++)
	{	cout<<"输入方程的常数项:";
	  	cin>>A[c][5];}
	  float *u=(float *)A;
	  x=(float *)malloc(n*sizeof(float));
	  for(r=0;r<=n-1;r++)
	  {for(i=r;i<=n;i++)
	      for(k=0;k<=r-1;k++)
			  *(u+r*(n+1)+i)-=*(u+r*(n+1)+k)*(*(u+k*(n+1)+i));
		for(i=r+1;i<=n-1;i++)
		{for(k=0;k<=r-1;k++)
		  *(u+i*(n+1)+r)-=*(u+i*(n+1)+k)*(*(u+k*(n+1)+r));
		  *(u+i*(n+1)+r)/=*(u+r*(n+1)+r);
		}
	  }
   for(i=n-1;i>=0;i--)
   {for(r=n-1;r>=i+1;r--)
    *(u+i*(n+1)+n)-=*(u+i*(n+1)+r)*x[r];
    x[i]=*(u+i*(n+1)+n)/(*(u+i*(n+1)+i));
   }
 
   
 for(int h=1;h<=n;h++)
 cout<<"方程组的解:"<<"x["<<h<<"]:"<<*x++<<endl;

 }
     

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -