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

📄 3107002005_3rd_三对角_追赶法.cpp

📁 三对角矩阵最常用最快速的追赶法
💻 CPP
字号:
#include "stdafx.h"
#include <iostream.h>
#include <fstream.h>
#include <math.h>
float g[20][20];
float a[20],b[20],c[20],l[20],u[20],y[20];
float d[20]={3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3};
float x[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
void tss(int nn)
{
	u[0]=b[0];
	y[0]=d[0];
	for(int k=1;k<=nn;k++)
	{
		l[k]=a[k]/u[k-1];
		u[k]=b[k]-l[k]*c[k-1];
		y[k]=d[k]-l[k]*y[k-1];
	}
	x[nn]=y[nn]/u[nn];
	for(k=nn-1;k>=0;k--)
	{
		x[k]=(y[k]-c[k]*x[k+1])/u[k];

	}
}

void main()
{
	cout<<"TSS对三对角方程的求解为:"<<endl;
	cout<<"x={";
	a[0]=b[0]=c[20]=0;
	for(int i=0;i<20;i++)
	{
		b[i]=g[i][i]=4;
		if(i-1>=0)
			a[i]=g[i][i-1]=-1;
		if(i+1<20)
				c[i]=g[i][i+1]=-1;
		//	else
		//		g[i][j]=0;
	
	}
	tss(19);
	for(i=0;i<20;i++)
		cout<<x[i]<<' ';
	cout<<"}";


}

⌨️ 快捷键说明

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