• 大小: 7KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-05
  • 语言: C/C++
  • 标签: C++  东北大学  

资源简介

自制的通过CMD来显示的矩阵计算器,压缩包内含头文件及源文件。可以实现矩阵加、减、乘、除(求逆后相乘)、求逆、求秩、转置和求行列式大小。东北大学中荷学院学生可能会需要到。

资源截图

代码片段和文件信息

// 矩阵.cpp: 定义控制台应用程序的入口点。
//

#include “stdafx.h“
#include “矩阵.h“
#include “iostream“
using namespace std;
int main()
{
cout << endl;
cout << “(°Д°)ノ欢迎使用矩阵计算器!“ << endl;
cout << endl;
int L=1;
Matrix M1 M2;
while (L)
{
cout << “您想进行什么样的运算?请输入相对应的字母或者选择退出:“ << endl;
cout << “A.相加   B.相减   C.相乘   D.转置    E.方阵求行列式    F.方阵求逆矩阵    G.方阵除法    H.方阵求秩    Q.退出 “< int r c;
char C;
cin >> C;
if (C >= 97)
{
C = C - 32;
}
switch (C)
{
case‘A‘:
{
cout << “您打算进行加法运算,那么“ << endl;
cout << “请输入您想计算的加数矩阵的行数“ << endl;
cin >> r;
cout << “请输入您想计算的加数矩阵的列数“ << endl;
cin >> c;
cout << “根据矩阵加法的法则,我们可知您将输入的另一个加数矩阵的行数和列数也必须为“ << r << “与“ << c << endl;
cout << “输入您的第一个加数矩阵的元素那么“ ;
M1.setM(r c);
cout << “输入您的第二个加数矩阵的元素那么“ ;
M2.setM(r c);
M1.Add(M2);
break;
}
case‘B‘:
{
cout << “您打算进行减法运算,那么“ << endl;
cout << “请输入您想计算的减数矩阵的行数“ << endl;
cin >> r;
cout << “请输入您想计算的减数矩阵的列数“ << endl;
cin >> c;
cout << “根据矩阵加法的法则,我们可知您将输入的另一个减数矩阵的行数和列数也必须为“ << r << “与“ << c << endl;
cout << “输入您的第一个减数矩阵的元素那么“ ;
M1.setM(r c);
cout << “请输入您的第二个减数矩阵的元素,那么“ << endl;
M2.setM(r c);
M1.Minus(M2);
break;
}
case‘C‘:
{
cout << “您打算进行乘法运算,那么“ << endl;
cout << “请输入您想计算的乘数矩阵的行数“ << endl;
cin >> r;
cout << “请输入您想计算的乘数矩阵的列数“ << endl;
cin >> c;
cout << “根据矩阵乘法的法则,我们可知您将输入的另一个乘数矩阵的行数和列数必须为“ << c << “与“ << r << endl;
cout << “请输入您的第一个乘数矩阵的元素“ << endl;
M1.setM(r c);
cout << “请输入您的第二个乘数矩阵的元素“ << endl;
M2.setM(c r);
M1.Multiple(M2);
break;
}
case‘D‘:
{
cout << “您打算进行转置运算,那么请输入矩阵的行数“ << endl;
cin >> r;
cout << “请输入矩阵的列数“ << endl;
cin >> c;
M1.setM(r c);
M1.T();
break;
}
case‘E‘:
{
cout << “您打算求矩阵的行列式,那么请输入矩阵的行数暨列数“< cin >> r;
M1.setM(r r);
M1.Determinant();
break;
}
case‘F‘:
{
M1.flag2 = 0;
cout << “您打算求矩阵的逆,那么请输入矩阵的行数暨列数“ << endl;
cin >> r;
M1.setM(r r);
M1.Determinant();
if (M1.D != 0)
{
M1.Inverse();
}
else
{
cout << “只有非奇异(行列式不为0)矩阵才可以求逆哦!“ << endl;
}
M1.flag2 = 1;
break;
}
case‘G‘:
{
int M = 1;
M1.flag2 = 0;
cout << “您打算进行两个方阵间的除法,那么请输入除数矩阵的行数暨列数“ << endl;
cin >> r;
cout << “对应的,您的被除数矩阵的行数暨列数也应该为“ < while (M)
{
cout << “请输入您的除数矩阵的元素“ << endl;
M1.setM(r r);
M1.Determinant();
if (M1.D != 0)
{
M = 0;
}
else
{
cout << “只有非奇异(行列式不为0)矩阵才可以作为除数哦!“ << endl;
}

}
cout << “请输入您的被除数矩阵的元素“ << endl;
M2.setM(r r);
cout << “您输入的除数矩阵的“;
M1.Devide(M2);
M1.flag2 = 1;
break;
}
case‘H‘:
{
cout << “您打算求方阵的秩,那么请输入矩阵的行数暨列数“ << endl;
cin >> r;
M1.setM(r r);
M1.Rank();
break;
}
case‘Q‘:
{

cout << “(づ ̄3 ̄)づ感谢您的使用!“ << endl;
L = 0;
break;
}
default:
{
cout << “( `д′

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        6146  2018-06-01 14:51  矩阵.cpp
     文件         556  2018-06-01 14:50  矩阵.h
     文件        5386  2018-05-30 20:46  矩阵求逆.h
     文件       10471  2018-06-26 13:35  矩阵运算.cpp

评论

共有 条评论