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

📄 chap6.cpp

📁 LDL分解法
💻 CPP
字号:
#include <iostream.h>
#include<iomanip>
#include "chap6.h"

void main()
{
	
	cout<<endl<<"※用LDL'分解求系数矩阵为对称正定矩阵的线性代数方程组※"<<endl;
	

	char yn='Y';  //yn是输入的指令变量,用于选择是否继续执行程序,y表示继续,任意其他键表示退出
	int c=1;//c是输入的指令变量,用于选择1,2两种模式
	
    matrix m;
	
	while(yn=='Y'||yn=='y')
	{
		//==========================================模式选择部分=============================================
		cout<<endl<<"请选择使用模式:1 求解题目中的线性代数方程组; 2 求解自定义的线性代数方程组"<<endl;
		cin>>c;
		switch(c)
		{
		case 1://模式1
			{
				m.initialize(4,2);
				m.input_fixed();
				m.LDL();
				m.solve(1);
				m.output(1);
				m.solve(2);
				m.output(2);
				
				break;
			}	
			
		case 2://模式2
			{
				int nn,mm;

				cout<<endl<<"请输入方程的个数n(即系数矩阵的阶数):"<<endl<<"n=";
				cin>>nn;
				cout<<"请输入求解的方程组中右端项的个数m:"<<endl<<"m=";
				cin>>mm;

				m.initialize(nn,mm);
			    m.input_client();
				m.LDL();
				for(int i=1;i<=mm;i++)
				{
					m.solve(i);
					m.output(i);
				}
				
				break;
			}	
			
		default: 
			{
				cout<<"输入的指令错误,请重新选择!"<<endl<<endl;
				break;
			}
		}
		
		cout<<endl<<endl<<"请问是否继续执行程序?[y/n]";//由用户选择是否继续执行程序
		cin>>yn;
		cout<<endl<<endl;
	}

	

}

⌨️ 快捷键说明

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