基本信息
文件名称:C++程序用于找到给定矩阵的迹和法线.docx
文件大小:16.98 KB
总页数:5 页
更新时间:2025-05-22
总字数:约3.2千字
文档摘要

C++程序用于找到给定矩阵的迹和法线

一些应用程序可以从二维数组或矩阵的使用中受益匪浅。数字存储在矩阵的行和列中。使用多维数组,我们也可以用C++定义2D矩阵。在这篇文章中,我们将了解如何使用C++确定给定矩阵的法线和迹线。

矩阵中元素总数的平方根就是所谓的普通的。迹线由构成主对角线的所有组件组成。让我们查看C++代码中算法的表示。

$\begin{bmatrix}853\换行符671\换行249\换行符\end{bmatrix},$

主对角线上所有元素的和:(8+7+9)=24,这是给定矩阵的迹

在上一个示例中,使用了一个3x3矩阵,结果是各矩阵的总和主对角线中的元素数量。矩阵的迹可以在总和中找到。让我们看一下算法有助于我们理解。

读取矩阵M作为输入

假设M有n行n列

总和:=0

对于从1到n的i,执行

sum:=sum+M[i][i]

返回总和

#includeiostream

#includecmath

#defineN7

usingnamespacestd;

floatsolve(intM[N][N]){

intsum=0;

//readelementsthroughmajordiagonal,whererowindexandcolumnindexaresame,botharei

for(inti=0;ii++){

sum=sum+M[i][i];

returnsum;

intmAIn(){

intmat1[N][N]={

{5,8,74,21,69,78,25},

{48,2,98,6,63,52,3},

{85,12,10,6,9,47,21},

{6,12,18,32,5,10,32},

{8,45,74,69,1,14,56},

{7,69,17,25,89,23,47},

{98,23,15,20,63,21,56},

coutTheTraceofthefirstmatrixis:solve(mat1)endl;

intmat2[N][N]={

{6,8,35,21,87,8,26},

{99,2,36,326,25,24,56},

{15,215,3,157,8,41,23},

{96,115,17,5,3,10,18},

{56,4,78,5,10,22,58},

{85,41,29,65,47,36,78},

{12,23,87,45,69,96,12}

coutTheTraceofthesecondmatrixis:solve(mat2)endl;

TheTraceofthefirstmatrixis:129

TheTraceofthesecondmatrixis:74

$\begin{bmatrix}853\换行符671\换行249\换行符\end{bmatrix},$

所有元素的总和:(8+5+3+6+7+1+2+4+9)=45

正态:(所有元素之和的平方根)=45=6.708

在上一个示例中,使用了3x3矩阵。我们首先计算其所有条目的总和在求其平方根之前。让我们看一下算法来帮助我们理解。

读取矩阵M作为输入

假设M有n行n列

总和初始化为0

对于从1到n的i,执行

对于范围从1到n的j,执行

sum:=sum+M[i][j]

res:=总和的平方根

返回结果

#includeiostream

#includecmath

#defineN7

usingnamespacestd;

floatsolve(intM[N][N]){

intsum=0;

//gothrougheachelement.Usingouterloop,access