doolittle.cpp

来自「Doolittle 分解法」· C++ 代码 · 共 65 行

CPP
65
字号
// Doolittle.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream.h>

#define  m 3

#define  n 3

double a[m+1][n+1]=
{
	{	0	,	0		,	0		,	0		}	,
	{	0	,	8.1		,	2.3		,	-1.5	}	,
	{	0	,	0.5		,	-6.23	,	0.87	}	,
	{	0	,	2.5		,	1.5		,	10.2	}
};

double b[m+1];



void printMatrix();

void main()
{
	double sum;
	for (int k = 1 ; k <= n ;k++ )
	{
		
		for (int j = k; j <= n ; j++)
		{
			sum = 0 ;
			for (int t = 1 ; t <= k-1 ; t++)
			{
				sum = sum + a[k][t]*a[t][j];
			}
			a[k][j] = a[k][j] - sum;
		}
		for (int i = k + 1 ; i <= n ; i++)
		{
			sum = 0 ;
			for (int t = 1 ; t <= k-1 ; t++)
			{
				sum = sum + a[i][t]*a[t][k];
			}
			a[i][k] = ( a[i][k] - sum ) / a[k][k];
		}
		
 	}
	printMatrix();	
}

void printMatrix()
{
	for ( int i = 1 ; i <= m ; i++)
	{
		for ( int j = 1 ; j <= n ; j++ )
		{
			cout << a[i][j] <<"\t";
		}
		cout << endl ;
	}
}

⌨️ 快捷键说明

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