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

📄 main.cpp

📁 自己编的一个矩阵类
💻 CPP
字号:
#include <iostream>
#include <stdlib.h>
#include "matrix.h"

using namespace std;

int main(void)
{
	const size_t MAXSIZE = 8;

	//定义ABCD并初始化
	Matrix A,B,C,D;
	A.CreateMatrix();
	B.CreateMatrix();
	C.CreateMatrix();
	D.CreateMatrix();

	//定义R E和a数组
	Matrix R[MAXSIZE];
	Matrix E[MAXSIZE];
	float  a[MAXSIZE];

	const size_t n = A.getNRow();
	
	Matrix I(n);//定义I=E
	
	//计算a0~a(n-1)
	//R[n-1] = Matrix(n);
	R[n-1] = I;
	a[n-1] = 0 - ( R[n-1] * A ).trace();
	for (int i = n-2;i >= 0;i--)
	{
		R[i] = R[i+1] * A + I * a[i+1];
		a[i] = 0 - ( R[i] * A ).trace() / (n-i);
	}

	//计算E0~E(n-1)
	E[n-1] = C * B;
	for (int i=n-2;i >= 0;i--)
	{
		E[i] = C * pow(A,n-1-i) * B;
		
		for (int m = n-2-i,j = n-1;m >= 0;m--,j--)
			E[i] += ( C * pow(A,m) * B ) * a[j];
		
	}	

	//输出计算结果
	//输出E0~E(n-1)
	cout<<"************"<<endl;
	cout<<"output..."<<endl;
	for(int i=0;i<n;i++)
	{
		cout << "E" << i << " = ";
		E[i].print();
		cout << "\n\n";
	}


	//输出a0~a(n-1)
	cout<<"**********"<<endl;
	for(int i=0;i<n;i++)
		cout<<"a"<<i<<"= "<<a[i]<<endl;

	system("pause");
	return 0;

}

⌨️ 快捷键说明

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