矩阵计算示例小程序

合集下载

矩阵的运算程序(C语言版)

矩阵的运算程序(C语言版)

#include<stdio.h>#define M 20#define N 20float A[M][N];float B[M][N];float C[M][N];int i,j,m,n,p,q;float y=1.0;void main(){printf(" ###########################################\n");printf(" ##### 欢迎您使用矩阵函数包系统。

######\n");printf(" ##### 系统功能: ######\n");printf(" ##### 计算两个矩阵相加,相减; ######\n");printf(" ##### 数乘矩阵;矩阵转置;求逆 ######\n");printf(" ##### 矩阵 ######\n");printf(" ###########################################\n");printf("请选择您需要的运算,按回车键结束\n");printf("************************************************************* *****\n");printf("1,矩阵相加\n");printf("2,矩阵相减\n");printf("3,数乘矩阵\n");printf("4,矩阵转置\n");printf("5,逆矩阵 \n");printf("6,退出 \n");printf("************************************************************* *****\n");int x;scanf("%d",&x);switch (x){case 1:{printf("请输入矩阵A的行数和列数(用逗号隔开):");scanf("%d,%d",&i,&j);printf("请输入矩阵B的行数和列数(用逗号隔开):") ;scanf("%d,%d",&m,&n);if(i!=m||j!=n)printf("***对不起,您输入的两个矩阵不能相加,请重试.***\n");else printf("请输入矩阵A:\n");for(p=0;p<i;p++)for(q=0;q<j;q++)scanf("%f",&A[p][q]);printf("输出矩阵A:\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",A[p][q]);if((q+1)%j==0)printf("\n");}printf("请输入矩阵B:\n");for(p=0;p<i;p++)for(q=0;q<j;q++)scanf("%f",&B[p][q]);printf("输出矩阵B:\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",B[p][q]);if((q+1)%j==0)printf("\n");}printf("矩阵A+矩阵B为:\n"); //计算两个矩阵相加for(p=0;p<i;p++)for(q=0;q<j;q++)C[p][q]=A[p][q]+B[p][q];for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",C[p][q]);if((q+1)%j==0)printf("\n");}};break;case 2:{printf("请输入矩阵A的行数和列数(用逗号隔开):");scanf("%d,%d",&i,&j);printf("请输入矩阵B的行数和列数(用逗号隔开):") ;scanf("%d,%d",&m,&n);if(i!=m||j!=n)printf("***对不起,您输入的两个矩阵不能相减,请重试.***\n"); else printf("请输入矩阵A:\n");for(p=0;p<i;p++)for(q=0;q<j;q++)scanf("%f",&A[p][q]);printf("输出矩阵A:\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",A[p][q]);if((q+1)%j==0)printf("\n");}printf("请输入矩阵B:\n");for(p=0;p<i;p++)for(q=0;q<j;q++)scanf("%f",&B[p][q]);printf("输出第矩阵B:\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",B[p][q]);if((q+1)%j==0)printf("\n");}printf("矩阵A-矩阵B为:\n"); //计算两个矩阵相减for(p=0;p<i;p++)for(q=0;q<j;q++)C[p][q]=A[p][q]-B[p][q];for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",C[p][q]);if((q+1)%j==0)printf("\n");}};break;case 3:{float k;printf("请输入矩阵A的行数和列数(用逗号隔开):"); scanf("%d,%d",&i,&j);printf("请输入矩阵A\n");for(p=0;p<i;p++)for(q=0;q<j;q++)scanf("%f",&A[p][q]);printf("输出矩阵A\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",A[p][q]);if((q+1)%j==0)printf("\n");}printf("请输入一个实数:\n");scanf("%f",&k);for(p=0;p<i;p++) //数乘矩阵for(q=0;q<j;q++)B[p][q]=k*A[p][q];printf("输出k乘矩阵A的结果\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",B[p][q]);if((q+1)%j==0)printf("\n");}};break;case 4:{printf("请输入矩阵A的行数和列数(用逗号隔开):"); scanf("%d,%d",&i,&j);printf("请输入矩阵A:\n");for(p=0;p<i;p++)for(q=0;q<j;q++)scanf("%f",&A[p][q]);printf("输出矩阵A\n");for(p=0;p<i;p++)for(q=0;q<j;q++){printf("%10.2f",A[p][q]);if((q+1)%j==0)printf("\n");}for(p=0;p<i;p++) //转置for(q=0;q<j;q++)B[q][p]=A[p][q];printf("输出矩阵A的转置矩阵:\n");for(p=0;p<j;p++)for(q=0;q<i;q++){printf("%10.2f",B[p][q]);if((q+1)%i==0)printf("\n");}};break;case 5:float a[M][2*M];float b[N][2*N];float t,x;int k,T;printf("输入方阵的维数:\n"); //请输入方阵,即行和列相等的矩阵。

excel 矩阵计算方法

excel 矩阵计算方法

怎样用Excel 进行矩阵计算2006-01-03 00:33一、Excel的数组、数组名和矩阵函数的设置1矩阵不是一个数,而是一个数组。

在Excel里,数组占用一片单元域,单元域用大括号表示,例如{A1:C3},以便和普通单元域A1:C3相区别。

设置时先选定单元域,同时按Shift+Ctrl+Enter键,大括弧即自动产生,数组域得以确认。

2Excel的一个单元格就是一个变量,一片单元域也可以视为一组变量。

为了计算上的方便,一组变量最好给一个数组名。

例如A={A1:C3}、B={E1:G3}等。

数组名的设置步骤是:选定数组域,点“插入”菜单下的“名称”,然后选择“定义”,输入数组名如A或B等,单击“确定”即可。

3矩阵函数是Excel进行矩阵计算的专用模块。

常用的矩阵函数有MDETERM(计算一个矩阵的行列式)、MINVERSE(计算一个矩阵的逆矩阵)、MMULT(计算两个矩阵的乘积)、SUMPRODUCT(计算所有矩阵对应元素乘积之和)……函数可以通过点击“=”号,然后用键盘输入,可以通过点击“插入”菜单下的“函数”,或点击fx图标,然后选择“粘贴函数”中相应的函数输入。

二、矩阵的基本计算数组计算和矩阵计算有很大的区别,我们用具体例子说明。

已知A={3 -2 5,6 0 3,1 5 4},B={2 3 -1,4 1 0,5 2 -1},将这些数据输入Excel相应的单元格,可设置成图1的形状,并作好数组的命名,即第一个数组命名为A,第二个数组命名为B。

计算时先选定矩阵计算结果的输出域,3×3的矩阵,输出仍是3×3个单元格,然后输入公式,公式前必须加上=号,例如=A+B、=A-B、=A*B等。

A+B、A-B数组运算和矩阵运算没有区别,“=A*B”是数组相乘计算公式,而“=MMULT(A,B)”则是矩阵相乘计算公式,“=A/B”是数组A除数组B的计算公式,而矩阵相除是矩阵A乘B的逆矩阵,所以计算公式是“=MMULT(A,MINVERSE(B))”。

矩阵的加、减、乘、除、求逆运算的实现

矩阵的加、减、乘、除、求逆运算的实现

矩阵的加、减、乘、除、求逆运算的实现1、矩阵的加减乘除求逆运算的概念: (1)矩阵概念有m n个数排列成⼀个m⾏n列,并括以⽅括弧(或圆括弧)的数表称为m⾏n列矩阵。

(2)矩阵加法: (3)矩阵乘法: (4)矩阵的求逆运算 (5)矩阵的除法: 分成两种(1)A\B=inverse(A)*B (2)B/A=B*inverse(A),理解上可能有误,不过是按照这两种⽅式来运算的。

2、要求: 要求很简单:编写⼀个实现矩阵(向量)的+ - * / 求逆运算的类(⼥友的⼀个作业题)3、实现代码View Code1 #include<stdio.h>2 #include<stdlib.h>3#define col 34#define row 35class matrix//类的定义6 {7private:8double m[col][row];//矩阵设置为私有的,9public:10 matrix(){}//⽆参数的构造函数11 matrix(double a[col][row]);//有参数的构造函数12 matrix Add(matrix &b);//加法运算声明13 matrix Sub(matrix &b);//减法运算声明14 matrix Mul(matrix &b);//乘法运算声明15 matrix Div(matrix &b);//除法运算声明16 matrix Inverse();//求逆运算声明17 ~matrix();//析构函数声明18void display();//显⽰函数声明19 };20 matrix::matrix(double a[col][row])//构造函数的定义21 {22int i,j;23for(i=0;i<col;i++)24for(j=0;j<row;j++)25 m[i][j]=a[i][j];26 }27 matrix matrix::Add(matrix &b)//加法运算28 {29int i,j;30 matrix*c=(matrix*)malloc(sizeof(matrix));31for(i=0;i<col;i++)32for(j=0;j<row;j++)33 c->m[i][j]=m[i][j]+b.m[i][j];34return(*c);35 }36 matrix matrix::Sub(matrix &b)//减法运算37 {38int i,j;39 matrix*c=(matrix*)malloc(sizeof(matrix));40for(i=0;i<col;i++)41for(j=0;j<row;j++)42 c->m[i][j]=m[i][j]-b.m[i][j];43return *c;44 }45 matrix matrix::Mul(matrix &b)//乘法运算46 {47int i,j,k;48double sum=0;49 matrix*c=(matrix*)malloc(sizeof(matrix));50for(i=0;i<col;i++)51 {52for(j=0;j<row;j++)53 {54for(k=0;k<row;k++)55 sum+=m[i][k]*(b.m[k][j]);56 c->m[i][j]=sum;57 sum=0;58 }59 }60return(*c);61 }62 matrix matrix::Div(matrix &b)//除法运算63 {64//除法直接求解,参见主函数65 matrix c;66return(c);67 }68 matrix matrix::Inverse()//求逆运算69 { //参考博客:/rollenholt/articles/2050662.html70int i,j,k,M=col,N=2*col;71double b[col][col*2];72 matrix*c=(matrix*)malloc(sizeof(matrix));73for(i=0;i<M;i++) //赋值74for(j=0;j<M;j++)75 b[i][j]=m[i][j];76for(i=0;i<M;i++) //扩展77for(j=M;j<N;j++)78 {79if(i==(j-M))80 b[i][j]=1;81else82 b[i][j]=0;83 }84/***************下⾯进⾏求逆运算*********/85for(i=0;i<M;i++)86 {87if(b[i][i]==0)88 {89for(k=i;k<M;k++)90 {91if(b[k][i]!=0) //作者的博客⾥⾯此处为b[k][k],貌似是不正确的,92//因为这对⽐如说是{0,0,1,1,0,1,0,1,1}的矩阵就会判断为不可逆, 93 { //⽽实际上该矩阵是可逆的,这⾥应该是作者笔误,待进⼀步求证 94for(int j=0;j<N;j++)95 {96double temp;97 temp=b[i][j];98 b[i][j]=b[k][j];99 b[k][j]=temp;100 }101break;102 }103 }104if(k==M)105 {106 printf("该矩阵不可逆!\n");107 exit(0);108 }109 }110for(j=N-1;j>=i;j--)111 b[i][j]/=b[i][i];112113for(k=0;k<M;k++)114 {115if(k!=i)116 {117double temp=b[k][i];118for(j=0;j<N;j++)119 b[k][j]-=temp*b[i][j];120 }121 }122 }123/**********************导出结果******************/124for(i=0;i<M;i++)125for(j=3;j<N;j++)126 c->m[i][j-3]=b[i][j];127return (*c);128 }129130 matrix::~matrix()131 {}132void matrix::display()133 {134int i,j;135for(i=0;i<col;i++)136 {137for(j=0;j<row;j++)138 printf("%f ",m[i][j]);139 printf("\n");140 }141 }142void main()143 {144double a[3][3]={{1,0,1},{0,1,1},{0,3,1}};145double b[3][3]={{0,0,1},{1,0,1},{0,1,0}};146 matrix ma(a),mb(b),mc;147int flag;148 printf("----------------------------------------------------\n请选择要进⾏的操作:\n1、打印\t2、加法"); 149 printf("\t3、减法\n4、乘法\t5、除法\t6、求逆\n7、退出\n");150 printf("-----------------------------------------------------\n");151 scanf("%d",&flag);152while((flag==1)||(flag==2)||(flag==3)||(flag==4)||(flag==5)||(flag==6)||(flag==7))153 {154if(flag==1)155 {156 printf("矩阵a为:\n");157 ma.display();158 printf("矩阵b为:\n");159 mb.display();160 }161if(flag==2)//矩阵加法运算162 {163 printf("矩阵加法运算结果:\n");164 mc=ma.Add(mb);165 mc.display();166 }167else if(flag==3)//矩阵减法运算168 {169 printf("矩阵减法运算结果:\n");170 mc=ma.Sub(mb);171 mc.display();172 }173else if(flag==4)//矩阵乘法运算174 {175 printf("矩阵乘法运算结果:\n");176 mc=ma.Mul(mb);177 mc.display();178 }179else if(flag==5)//矩阵除法运算180 {181 printf("矩阵除法运算结果:\n");182 printf("矩阵的除法分成两类:\n 1、A\\B=inverse(A)*B \n 2、B/A=B*inverse(A)\n"); 183 printf("采⽤第1类,则a\\b的结果为:\n");184 mc=ma.Inverse();185 mc=mc.Mul(mb);186 mc.display();187 printf("采⽤第2类,则a/b的结果为:\n");188 mc=mb.Inverse();189 mc=ma.Mul(mc);190 mc.display();191 }192else if (flag==6)//矩阵求逆运算193 {194 printf("矩阵a求逆运算结果为:\n");195 mc=ma.Inverse();196 mc.display();197198 printf("矩阵b求逆运算结果为:\n");199 mc=mb.Inverse();200 mc.display();201 }202else {exit(0);}203 printf("----------------------------------------------------\n请选择要进⾏的操作:\n1、打印\t2、加法"); 204 printf("\t3、减法\n4、乘法\t5、除法\t6、求逆\n7、退出\n");205 printf("-----------------------------------------------------\n");206 scanf("%d",&flag);207 }208 }4、参考: (1)c编程,谭浩强。

C语言实现矩阵计算

C语言实现矩阵计算

C语言实现矩阵计算C语言是一种广泛使用的编程语言,也是实现矩阵计算的一种常用工具。

在C语言中,我们可以使用数组来表示矩阵,并通过循环结构和算术运算符来实现矩阵计算的各种功能。

首先,我们需要实现矩阵的输入和输出功能。

在C语言中,我们可以使用二维数组来表示矩阵。

下面是一个示例代码,用来输入和显示一个矩阵:```c#include <stdio.h>//定义最大矩阵的大小#define MAX_SIZE 100//函数用于输入一个矩阵void inputMatrix(int matrix[MAX_SIZE][MAX_SIZE], int rows, int cols)printf("请输入矩阵元素:\n");for (int i = 0; i < rows; i++)for (int j = 0; j < cols; j++)scanf("%d", &matrix[i][j]);}}//函数用于显示一个矩阵void displayMatrix(int matrix[MAX_SIZE][MAX_SIZE], int rows, int cols)printf("矩阵元素为:\n");for (int i = 0; i < rows; i++)for (int j = 0; j < cols; j++)printf("%d ", matrix[i][j]);}printf("\n");}```上述代码定义了两个函数:`inputMatrix`用于输入一个矩阵,`displayMatrix`用于显示一个矩阵。

我们可以通过调用这两个函数来输入和显示矩阵。

接下来,我们可以实现矩阵的加法、减法和乘法等功能。

以下是一个示例代码,用于实现矩阵的加法:```c//函数用于计算两个矩阵的加法void addMatrix(int matrix1[MAX_SIZE][MAX_SIZE], intmatrix2[MAX_SIZE][MAX_SIZE], int result[MAX_SIZE][MAX_SIZE], int rows, int cols)for (int i = 0; i < rows; i++)for (int j = 0; j < cols; j++)result[i][j] = matrix1[i][j] + matrix2[i][j];}}```上述代码中,我们定义了一个`addMatrix`函数,该函数接受两个输入矩阵和一个结果矩阵,将两个输入矩阵的对应元素相加,并将结果存储在结果矩阵中。

用c++实现矩阵的基本操作

用c++实现矩阵的基本操作

用c++实现矩阵的基本操作全文共四篇示例,供读者参考第一篇示例:矩阵是数学中一个非常重要的概念,它在科学计算、工程领域以及计算机编程中都有着广泛的应用。

通过使用矩阵,我们可以方便地表示和处理大量的数据,并进行各种数学运算。

在本文中,我们将通过使用C++语言来实现矩阵的基本操作,包括矩阵的创建、加法、减法、乘法、转置等操作。

让我们来看看如何在C++中表示矩阵。

一般来说,我们可以使用二维数组来表示一个矩阵。

一个3x3的矩阵可以用如下的代码来表示:```cppint matrix[3][3] = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};```matrix是一个3x3的矩阵,我们可以通过matrix[i][j]来访问矩阵中的元素,其中i表示行数,j表示列数。

接下来,让我们来实现矩阵的加法、减法和乘法操作。

在矩阵的加法和减法操作中,我们只需要将相应位置的元素相加或相减即可。

以下是一个简单的示例代码:```cppconst int ROW = 3;const int COL = 3;// 矩阵加法int C[ROW][COL];for (int i = 0; i < ROW; i++) {for (int j = 0; j < COL; j++) {C[i][j] = A[i][j] + B[i][j];}}在矩阵的乘法操作中,我们需要注意矩阵相乘的规则,即如果一个矩阵是m x n的,另一个矩阵是n x p的,则它们的乘积矩阵是一个m x p的矩阵。

以下是一个简单的示例代码:接下来,让我们来实现矩阵的转置操作。

矩阵的转置是指将矩阵的行和列互换的操作。

以下代码展示了如何在C++中实现矩阵的转置操作:以上代码中,我们首先创建了一个3x4的矩阵A,然后通过两层循环将矩阵A转置后存储在矩阵B中。

第二篇示例:矩阵是线性代数中的重要概念,它由行和列组成,可以用来表示一系列数据或者向量。

matlab 多维矩阵计算

matlab 多维矩阵计算

matlab 多维矩阵计算
在MATLAB中,多维矩阵计算是非常常见的操作。

以下是一些常用的多维矩阵计算方法:
1. 矩阵乘法:使用`*`运算符进行矩阵乘法。

例如,如果有两个矩阵A和B,可以使用`C = A * B`来计算它们的乘积。

2. 矩阵加法:使用`+`运算符进行矩阵加法。

例如,如果有两个矩阵A和B,可以使用`C = A + B`来计算它们的和。

3. 矩阵减法:使用`-`运算符进行矩阵减法。

例如,如果有两个矩阵A和B,可以使用`C = A - B`来计算它们的差。

4. 矩阵转置:使用`'`运算符进行矩阵转置。

例如,如果有一个矩阵A,可以使用`B = A'`来获取它的转置矩阵。

5. 矩阵求逆:使用`inv()`函数进行矩阵求逆。

例如,如果有一个可逆矩阵A,可以使用`B = inv(A)`来获取它的逆矩阵。

6. 矩阵行列式:使用`det()`函数计算矩阵的行列式。

例如,如果有一个方阵A,可以使用`b = det(A)`来计算它的行列式值。

7. 矩阵特征值和特征向量:使用`eig()`函数计算矩阵的特征值和特征向量。

例如,如果有一个方阵A,可以使用`[V,D] = eig(A)`来获取它的特征向量矩阵V和特征值对角矩阵D。

8. 矩阵分解:MATLAB提供了多种矩阵分解方法,如LU分解、QR分解、SVD分解等。

可以使用相应的函数进行矩阵分解,如`lu()`、`qr()`、`svd()`等。

Excel高级技巧使用数组公式进行矩阵运算和数据分析

Excel高级技巧使用数组公式进行矩阵运算和数据分析

Excel高级技巧使用数组公式进行矩阵运算和数据分析Excel高级技巧:使用数组公式进行矩阵运算和数据分析Excel是一款广泛应用于数据处理与分析的软件工具,在日常工作中经常会遇到需要对大量数据进行矩阵运算和数据分析的情况。

为了提高工作效率,掌握Excel高级技巧是非常有必要的。

本文将介绍如何利用Excel的数组公式来进行矩阵运算和数据分析。

请按照下面的格式书写文章。

1. 矩阵运算在Excel中,矩阵运算可以通过数组公式实现。

数组公式是一种特殊的Excel公式,它可以将多个数据区域作为一个整体来处理。

下面以矩阵乘法为例,介绍如何使用数组公式进行矩阵运算。

步骤一:创建两个矩阵首先,创建两个矩阵A和B,分别输入数据并选择一个空的区域C 作为结果区域。

步骤二:输入数组公式选中结果区域C,然后在输入公式的编辑栏中输入以下内容,并按下Ctrl+Shift+Enter组合键,将公式转化为数组公式:{=MMULT(A1:B3,D1:E2)}这里的MMULT函数用于求解两个矩阵的乘积,A1:B3和D1:E2分别为矩阵A和矩阵B的区域。

步骤三:查看结果你将发现结果区域C中显示了矩阵乘积的结果。

2. 数据分析Excel的数组公式还可以应用于数据分析,帮助我们快速处理和分析大量数据。

下面以数据排序和汇总为例,介绍如何通过数组公式进行数据分析。

步骤一:数据排序假设你有一份销售数据表格,其中包含了产品名称、销售量和销售额等信息。

现在你需要按照销售额从高到低的顺序对数据进行排序。

首先,选中销售额列的区域,并在公式编辑栏中输入以下数组公式:{=SORT($B$2:$C$10,2,-1)}这里的SORT函数用于对指定区域的数据进行排序,$B$2:$C$10为销售量和销售额的区域,2表示按照销售额列进行排序,-1表示按照降序排列。

按下Ctrl+Shift+Enter组合键,将公式转化为数组公式。

你将发现销售额列的数据按照从高到低的顺序排列。

Python——矩阵相乘(采用矩阵相乘数学计算方法实现)(tkinter实现)

Python——矩阵相乘(采用矩阵相乘数学计算方法实现)(tkinter实现)

Python——矩阵相乘(采⽤矩阵相乘数学计算⽅法实现)(tkinter实现)⽬录本功能作者:1.CSDN⽤户(TDTX),博客园⽤户(TDTX),【矩阵相乘】采⽤线性代数中,计算矩阵相乘的⽅法实现1.在点击“矩阵相乘”之前,要先点击其余所有按钮2.本⽂只实现了核⼼的计算原理,读者可⾃加输⼊检查的代码1.multipmatrix.pydef multipmatrix():import tkinter as tklinearwindow1=()linearwindow1.title("Multipmatrix")linearwindow1.geometry("600x700")def hanga():global hang1hang1=eval(e1.get())def liea():global lie1lie1=eval(e2.get())def hangb():global hang2hang2=eval(e3.get())def lieb():global lie2lie2=eval(e4.get())def smatrixa():ma1=[]ma1=eval(e5.get())# print(ma1)# print(ma1[0][1])def smatrixb():ma2=[]ma2=eval(e6.get())# print(ma2)def mupm():mupma=[]sum=0ma1=[]ma1=eval(e5.get())ma2=[]ma2=eval(e6.get())if lie1!=hang2:tx.insert('insert',"结论:A不能左乘B"+'\n')else:tx.insert('insert','\n'+"结论:A可以左乘B"+'\n')i=0j=0k=0c0=0c=0while k<hang1:for j in range(lie2):for i in range(hang2):sum=sum+ma1[k][i]*ma2[i][j]# print(sum)mupma.append(sum)sum=0k=k+1# print(mupma)for co in mupma:tx.insert('insert',co)c=c+1if c%lie2==0:tx.insert('insert','\n')if c%lie2!=0:tx.insert('insert','\t')tx.insert('insert','\n')e1 = tk.Entry(linearwindow1,font=('Arial', 14),width=7)e1.grid(row=0, column = 1)bt1=tk.Button(linearwindow1,text='确认矩阵A⾏数',width=12,height=1,font=('Arial', 10),command=hanga)bt1.grid(row=1, column = 1)e2 = tk.Entry(linearwindow1,font=('Arial', 14),width=7)e2.grid(row=2, column = 1)bt2=tk.Button(linearwindow1,text='确认矩阵A列数',width=12,height=1,font=('Arial', 10),command=liea)bt2.grid(row=3, column = 1)e3 = tk.Entry(linearwindow1,font=('Arial', 14),width=7)e3.grid(row=5, column = 1)bt3=tk.Button(linearwindow1,text='确认矩阵B⾏数',width=12,height=1,font=('Arial', 10),command=hangb)bt3.grid(row=6, column = 1)e4 = tk.Entry(linearwindow1,font=('Arial', 14),width=7)e4.grid(row=7, column = 1)bt4=tk.Button(linearwindow1,text='确认矩阵B列数',width=12,height=1,font=('Arial', 10),command=lieb)bt4.grid(row=8, column = 1)lb1=bel(linearwindow1, text='在[]中以[]分隔⾏,以逗号分隔元素:\nexamp:[[1,2],[3,4],[5,6],[7,8]]', bg='orange', font=('Arial', 12), width=30, height=2) lb1.grid(row=0, column = 6)e5 = tk.Entry(linearwindow1,font=('Arial', 14),width=40)e5.grid(row=1, column = 6)bt5=tk.Button(linearwindow1,text='确认矩阵A',width=12,height=1,font=('Arial', 10),command=smatrixa)bt5.grid(row=2, column = 6)lb2=bel(linearwindow1,text='在[]中以[]分隔⾏,以逗号分隔元素:\nexamp:[[1,2,3,4],[5,6,7,8]]', bg='orange', font=('Arial', 12), width=30, height=2)lb2.grid(row=3, column = 6)e6 = tk.Entry(linearwindow1,font=('Arial', 14),width=40)e6.grid(row=4, column = 6)bt6=tk.Button(linearwindow1,text='确认矩阵B',width=12,height=1,font=('Arial', 10),command=smatrixb)bt6.grid(row=5, column = 6)lb3=bel(linearwindow1,text='------------------------------------------------------', bg='orange', font=('Arial', 12), width=30, height=0)lb3.grid(row=6, column = 6)bt7=tk.Button(linearwindow1,text='矩阵A左乘矩阵B',width=12,height=1,font=('Arial', 10),command=mupm)bt7.grid(row=7, column = 6)lb4=bel(linearwindow1,text='【AB=C】C=:', bg='orange', font=('Arial', 12), width=30, height=1)lb4.grid(row=8, column = 6)tx=tk.Text(linearwindow1,width=37,height=25)tx.grid(row=9, column = 6)linearwindow1.mainloop()2.结果⽰例【不符合矩阵A左乘矩阵B的运算条件,输出结论】。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档