实验3MATLAB矩阵分析与处理和字符串操作实...
- 格式:doc
- 大小:42.00 KB
- 文档页数:4
matlab矩阵实验报告《MATLAB矩阵实验报告》摘要:本实验报告利用MATLAB软件进行了矩阵实验,通过对矩阵的运算、转置、逆矩阵、特征值等操作进行了分析和讨论。
实验结果表明,MATLAB在矩阵运算方面具有高效、准确的特点,能够满足工程和科学计算的需求。
引言:矩阵是线性代数中的重要概念,广泛应用于工程、物理、经济等领域。
MATLAB是一种强大的数学软件,能够对矩阵进行各种运算和分析。
本实验旨在利用MATLAB软件对矩阵进行实验,探讨其在矩阵运算中的应用和优势。
实验方法:1. 创建矩阵:利用MATLAB软件创建不同大小的矩阵,包括方阵和非方阵。
2. 矩阵运算:进行矩阵的加法、减法、乘法等运算,比较不同大小矩阵的计算效率和结果准确性。
3. 矩阵转置:对矩阵进行转置操作,观察转置后矩阵的性质和应用。
4. 逆矩阵:求解矩阵的逆矩阵,并分析逆矩阵在实际问题中的应用。
5. 特征值和特征向量:利用MATLAB软件求解矩阵的特征值和特征向量,分析其在物理、工程等领域的应用。
实验结果与讨论:通过实验发现,MATLAB软件在矩阵运算中具有高效、准确的特点。
对于大规模矩阵的运算,MATLAB能够快速进行计算并给出准确的结果。
在矩阵转置和逆矩阵求解方面,MATLAB也能够满足工程和科学计算的需求。
此外,通过求解矩阵的特征值和特征向量,可以得到矩阵的重要性质,为实际问题的分析和求解提供了有力支持。
结论:本实验利用MATLAB软件进行了矩阵实验,通过对矩阵的运算、转置、逆矩阵、特征值等操作进行了分析和讨论。
实验结果表明,MATLAB在矩阵运算方面具有高效、准确的特点,能够满足工程和科学计算的需求。
希望本实验能够对矩阵运算和MATLAB软件的应用有所启发,为相关领域的研究和应用提供参考。
MATLAB矩阵的分析与处理截图版实验报告实验名称:MATLAB矩阵的分析与处理
实验步骤:
(1)打开matlab软件,进行操作界面的基本设置,转到矩阵的工作空间;
(2)创建矩阵并进行矩阵的分析操作,包括将矩阵拆分成2部分:A矩阵和B 矩阵,并运用函数求和、求积、求最大值等操作;
(3)进行矩阵的处理操作,包括矩阵的相乘、运算求值等操作,实现矩阵的转置操作;
(4)并进行图形处理,将计算数据和结果以函数图、标尺图、表格等方式展现出来,并进行分析;
(5)最后,根据实验的结果,总结实验的感悟和体会。
实验结果:
实验过程中,使用了MATLAB矩阵的基本操作,包括矩阵的求和、求积、求最大值、相乘、求值等操作,实现了矩阵的处理,并且将计算数据以图形的方式展示出来,有利于我们更好的理解数据,作出更准确的判断:
我们创建的矩阵如下图所示:

综上所述,我在本次实验中,掌握了MATLAB矩阵的基本操作,及其运用函数求和求积求最大值、相乘运算求值等方法,也通过图像数据展现来更好的了解矩阵的变化和分析结果。
通过实验,我能够更好地掌握MATLAB矩阵的分析与处理方法,从而加深对MATLAB 矩阵的理解,并为以后的操作打下坚实的基础。
实验三 MATLAB 矩阵分析与处理、字符串操作一、实验目的1.掌握生成特殊矩阵的方法2.熟练掌握矩阵的特殊操作及一些特殊函数3.熟练掌握MATLAB 的字符串操作4.掌握MATLAB 矩阵的关系运算及逻辑运算法则二、实验内容1.特殊矩阵分析与处理操作常用的产生通用特殊矩阵的函数有:zeros( );ones( );eye( );rand( );randn( ). 下面建立随机矩阵。
(1) 在区间[20,50]内均匀分布的5阶随机矩阵。
(2) 均值为0.6、方差为0.1的5阶随机矩阵。
说明:产生(0 ,1)区间均匀分布随机矩阵使用rand 函数,假设得到了一组满足(0,1)区间均匀分布的随机数x i ,则若想得到任意[a,b]区间上均匀分布的随机数,只需要用i i x a b a y )(-+=计算即可。
产生均值为0、方差为1的标准正态分布随机矩阵使用randn 函数,假设已经得到了一组标准正态分布随机数x i ,如果想要更一般地得到均值为i i x y ,、σμσμ+=可用的随机数方差为2计算出来。
针对本例,命令如下:x=20+(50-20)*rand(5)y=0.6+sqrt(0.1)*randn(5)建立对角阵。
diag( )函数除了可以提取矩阵的对角线元素以外,还可以用来建立对角矩阵。
设V 为具有m 个元素的向量,diag(V)将产生一个m*m 对角矩阵,其主对角线元素即为向量V 的元素。
例如:diag([1,2,-1,4])ans= 4000010000200001 diag(V)函数也有另一种形式diag(V ,k),其功能是产生一个n*n(n=m+|k|)的对角矩阵,其第k 条对角线的元素即为向量V 的元素。
例如:diag(1:3,-1)ans=0300002000010000矩阵的旋转函数rot90(A,k)表示将矩阵A 以90度为单位对矩阵按逆时针方向进行k 倍的旋转。
rem 与mod 函数的区别练习:1> 写出完成下列操作的命令。
第3章MATLAB矩阵分析与处理MATLAB是一种强大的数学计算软件,用于实现矩阵分析与处理。
在MATLAB中,矩阵是最常用的数据结构之一,通过对矩阵的分析和处理,可以实现很多有用的功能和应用。
本章将介绍MATLAB中矩阵分析与处理的基本概念和方法。
1.矩阵的基本操作在MATLAB中,我们可以使用一些基本的操作来创建、访问和修改矩阵。
例如,可以使用“[]”操作符来创建矩阵,使用“(”操作符来访问和修改矩阵中的元素。
另外,使用“+”、“-”、“*”、“/”等运算符可以对矩阵进行加减乘除等运算。
2.矩阵的运算MATLAB提供了一系列的矩阵运算函数,可以对矩阵进行常见的运算和操作,例如矩阵的转置、求逆、行列式、特征值和特征向量等。
这些函数可以帮助我们进行矩阵的分析和求解。
3.矩阵的分解与合并在MATLAB中,我们可以对矩阵进行分解或合并操作。
例如,可以将一个矩阵分解为其QR分解、LU分解或奇异值分解等。
另外,可以使用“[]”操作符来将多个矩阵合并为一个矩阵,或者使用“;”操作符来将多个矩阵连接为一个矩阵。
4.矩阵的索引与切片MATLAB提供了灵活的索引和切片功能,可以方便地访问和修改矩阵中的元素。
可以使用单个索引来访问单个元素,也可以使用多个索引来访问/修改一行或一列的元素。
此外,还可以通过切片操作来访问矩阵的一部分。
5.矩阵的应用矩阵分析与处理在MATLAB中有着广泛的应用。
例如,可以使用矩阵进行图像处理,通过对图像矩阵的操作,可以实现图像的缩放、旋转、滤波等。
另外,矩阵还可以用于线性回归、分类、聚类和模式识别等领域。
总之,MATLAB提供了丰富的功能和工具,可以方便地进行矩阵分析与处理。
无论是简单的矩阵运算,还是复杂的矩阵分解与合并,MATLAB 都提供了相应的函数和操作符。
通过熟练使用MATLAB,我们可以高效地进行矩阵分析与处理,从而实现各种有用的功能和应用。
实验三、MATLAB 矩阵分析与处理、函数文件一、 实验目的1.掌握生成特殊矩阵的方法。
2.掌握矩阵分析的方法。
3.用矩阵求逆法解线性方程组。
4.理解函数文件的概念。
5.掌握定义和调用MATLAB 函数的方法。
二、 实验内容及结果1.设有分块矩阵⎥⎦⎤⎢⎣⎡=⨯⨯⨯⨯22322333EA S O R ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证⎥⎦⎤⎢⎣⎡+=22S O RS R E A 。
程序:E=eye(3); %建立单位矩阵 R=rand(3,2); %建立随机矩阵 O=zeros(2,3); %建立零矩阵 S=diag([1,2]); %建立对角阵 A=[E,R;O,S]; X1=A*AX2=[E,R+R*S;O,S*S] 结果:X1和X2结果相等,即可证明原式成立。
2.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。
为什么?程序:format ratH=hilb(5) %建立希尔伯特矩阵P=pascal(5) %建立帕斯卡矩阵Hh=det(H) %求行列式的值Hp=det(P)Th=cond(H) %求条件数Tp=cond(P)结果:P矩阵的条件数比矩阵H的条件数更接近于1,因此,矩阵P的性能要好于矩阵H。
3.建立一个5×5矩阵,求它的行列式值、迹、秩和范数。
程序:a=rand(5)b=det(a) %求行列式的值c=trace(a) %求迹d=rank(a) %求秩e1=norm(a,1) %求1-范数e2=norm(a) %求2-范数einf=norm(a,inf) %求 -范数结果:4.已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=5881252018629A 求A 的特征值及其特征向量,并分析其数学意义。
程序:A=[-29,6,18;20,5,12;-8,8,5];[V,D]=eig(A) %求特征值和特征向量 结果:求得的三个特征值为-25.3169,-10.5182和16.8351,各特征值对应的特征向量为V 的各列构成的向量。
实验一 MATLAB基本操作一、实验目的1、了解MATLAB应用程序环境2、掌握MATLAB语言程序的书写格式和MATLAB语言程序的结构。
3、掌握在MATLAB应用环境下编写程序4、掌握MATALB调试过程,帮助文件5、掌握MATLAB语言上机步骤,了解运行一个MATLAB程序的方法。
6、本实验可在学习完教材第一章后进行。
二、主要仪器及耗材PC电脑,MATLAB6.5软件三、实验内容和步骤1、MATLAB语言上机步骤:(1)、进入系统在C盘或其他盘上找到MATLAB或MATLAB6.5,然后双击其图标打开文件夹。
然后进行编辑源程序->编译->连接->执行程序->显示结果(2)、常用命令编辑切换(F6),编译(F9),运行(CTRL+F9),显示结果(ALT+F5)其它常用命令见“附录一”。
2、有下面的MATLAB程序。
(1)数值计算功能:如,求方程 3x4+7x3 +9x2-23=0的全部根p=[3,7,9,0,-23]; %建立多项式系数向量x=roots(p) %求根(2)绘图功能:如,绘制正弦曲线和余弦曲线x=[0:0.5:360]*pi/180;plot(x,sin(x),x,cos(x));(3)仿真功能:如,请调试上述程序。
3、熟悉MATLAB环境下的编辑命令,具体见附录一。
三、实验步骤1、静态地检查上述程序,改正程序中的错误。
2、在编辑状态下照原样键入上述程序。
3、编译并运行上述程序,记下所给出的出错信息。
4、按照事先静态检查后所改正的情况,进行纠错。
5、再编译执行纠错后的程序。
如还有错误,再编辑改正,直到不出现语法错误为止。
四、实验注意事项1、记下在调试过程中所发现的错误、系统给出的出错信息和对策。
分析讨论对策成功或失败的原因。
2、总结MATLAB程序的结构和书写规则。
五、思考题1、matlab到底有多少功能?2、MATLAB的搜索路径3、掌握使用MATLAB帮助文件实验二 MATLAB 矩阵及其运算一、 实验目的1、了解矩阵的操作,包括矩阵的建立、矩阵的拆分、矩阵分析等2、了解MATLAB 运算,包括算术运算、关系运算、逻辑运算等3、掌握字符串的操作,了解结构数据和单元数据。
实验一 MATLAB 运算基础1。
先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。
(1) 0122sin 851z e =+(2) 21ln(2z x =,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e az a a --+=++=--(4) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 解:4. 完成下列操作:(1)求[100,999]之间能被21整除的数的个数. (2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:(2)。
建立一个字符串向量例如:ch=’ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。
解: M 文件如下;5。
下面是一个线性方程组:1231112340.951110.673450.52111456x x x ⎡⎤⎢⎥⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦ch =123d4e56g9(1) 求方程的解。
(2) 将方程右边向量元素b 3改为0。
53再求解,并比较b 3的变化和解的相对变化。
(3) 计算系数矩阵A 的条件数并分析结论。
解: M 文件如下:实验三 选择结构程序设计1. 求分段函数的值.2226035605231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩且且及其他用if 语句实现,分别输出x=-5.0,—3.0,1.0,2。
matlab矩阵实验报告
《MATLAB矩阵实验报告》
摘要:
本实验报告利用MATLAB软件进行了一系列矩阵实验,包括矩阵的创建、运算、特征值分解和矩阵方程的求解等。
通过实验,我们深入了解了矩阵在MATLAB
中的操作方法,掌握了矩阵运算的基本原理和技巧。
1. 实验目的
本实验旨在通过MATLAB软件进行矩阵实验,掌握矩阵的基本操作和运算方法,加深对矩阵特征值分解和矩阵方程求解的理解,提高MATLAB软件的应用能力。
2. 实验内容
(1)矩阵的创建和赋值
(2)矩阵的运算:加法、减法、乘法
(3)矩阵的特征值分解
(4)矩阵方程的求解
3. 实验过程
首先,我们在MATLAB软件中创建了若干个矩阵,并对其进行了赋值操作。
然后,我们进行了矩阵的加法、减法和乘法运算,观察了不同矩阵之间的运算结果。
接着,我们利用MATLAB自带的函数对矩阵进行了特征值分解,并分析了
特征值分解的意义和应用。
最后,我们利用MATLAB解决了一些矩阵方程,验
证了矩阵方程求解的正确性。
4. 实验结果
通过实验,我们成功创建了各种矩阵,并对其进行了各种运算。
特征值分解和
矩阵方程的求解也得到了满意的结果,验证了MATLAB在矩阵操作方面的强大功能。
5. 实验结论
通过本次实验,我们进一步加深了对矩阵操作的理解,掌握了MATLAB软件在矩阵实验方面的应用技巧。
矩阵在数学和工程领域有着广泛的应用,MATLAB 软件的矩阵操作功能为矩阵相关问题的研究和解决提供了便利和支持。
综上所述,本次实验取得了圆满成功,为我们进一步学习和应用矩阵知识奠定了良好的基础。
1程序:E=eye(3); %E为3行3列的单位矩阵R=rand(3,2); %R为3行2列的随机矩阵O=zeros(2,3); %O为2行3列的全0矩阵S=diag([2,3]); %S为对角矩阵A=[E R;O S];B1=A^2B2=[E R+R*S;O S^2] %验证B1=B2,即:A2=[E R+R*S;O S2]结果:B1=B2,原式得证。
2程序:H=hilb(5);P=pascal(5);Hh=det(H) %矩阵H的行列式值Hp=det(P) %矩阵P的行列式值Th=cond(H) %矩阵H的条件数Tp=cond(P) %矩阵P的条件数结果:所以,矩阵H的性能更好。
因为H的条件数Th更接近1。
3程序:A=[1 25 45 58 4;45 47 78 4 5;2 58 47 25 9 ;58 15 36 4 96;58 25 12 1 35]; Ha=det(A) %矩阵A的行列式值Ja=trace(A) %矩阵A的迹Za=rank(A) %矩阵A的秩Fa=norm(A) %矩阵A的范数结果:4程序:A=[-29 6 18;20 5 12;-8 8 5];[V D]=eig(A) %D为全部特征值构成的对角阵;V的列向量分别为相应的特征向量结果:5程序:A=[1/2 1/3 1/4;1/3 1/4 1/5;1/4 1/5 1/6];b=[0.95 0.67 0.52]';X=A\b %方程的解c=[0.95 0.67 0.53]'; %将b3=0.52改为0.53Y=A\c %b3改变后的解t=cond(A) %系数矩阵的条件数结果:6程序:A=[4 2;3 9];B1=sqrtm(A) %矩阵A的平方根B2=sqrt(A)Sqrtm(A)求出的是矩阵A的平方根,即:A1^A1=A,求出的是A1Sqrt(A)求出的是A中每个元素的平方根,即:A2.^A2=A,求出的是A2。
数学软件实验报告(二)系:专业:年级:姓名:学号:实验课程:实验室号:_ 实验设备号:实验时间:指导教师签字:成绩:1. 实验项目名称:MATLAB矩阵分析与处理2. 实验目的和要求1.掌握生成特殊矩阵的方法2.掌握矩阵分析的方法3.用矩阵求逆解线性方程组3. 实验使用的主要仪器设备和软件方正商祺N260微机;MATLAB7. 0或以上版本4. 实验的基本理论和方法实验原理:(1)矩阵的建立(2)建立随机矩阵X=a+(b-a)×rand(n)(注(a,b)为范围,n为阶数)(3)round函数(4)矩阵的乘除(5)矩阵行列式的值det(A)(6)矩阵的迹trace(A)(7)矩阵的秩rank(A)(8)提取矩阵对角线元素diag(A)(9)构造对角阵diag(V)(10)矩阵的特征值与特征向量[V,D]=eig(A)(11)求解线性方程组X=A\B5. 实验内容与步骤(描述实验中应该做什么事情,如何做等,实验过程中记录发生的现象、中间结果、最终得到的结果,并进行分析说明)(包括:题目,写过程、答案)题目:1.设有分块矩阵A=⎥⎦⎤⎢⎣⎡⨯⨯⨯⨯22322333SORE,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角矩阵,试通过数值计算验证A2=⎥⎦⎤⎢⎣⎡+2SORSRE。
>> E=[1 0 0;0 1 0;0 0 1]E =1 0 00 1 00 0 1>> R=[1 2;1 3;2 3]R =1 21 32 3>> O=[0 0 0;0 0 0]O =0 0 00 0 0>> S=[1 2;2 1]S =1 22 1>> A=[E R;O S]A =1 0 0 1 20 1 0 1 30 0 1 2 30 0 0 1 20 0 0 2 1>> A^2ans =1 0 0 6 60 1 0 8 80 0 1 10 100 0 0 5 40 0 0 4 5>> [E R+R*S;O S^2]ans =1 0 0 6 60 1 0 8 80 0 1 10 100 0 0 5 40 0 0 4 52.建立一个5 5矩阵,其元素[100,200]范围内的随机整数,求它的行列式值、迹、秩,最后提取A的主对角线元素,并将这些元素构成对角阵B。
matlab矩阵实验报告Matlab矩阵实验报告引言:Matlab是一种强大的数学计算工具,广泛应用于科学研究、工程设计和数据分析等领域。
其中,矩阵操作是Matlab的一项重要功能,它提供了丰富的矩阵运算和处理函数。
本实验将通过几个具体的案例,展示Matlab中矩阵操作的应用和效果。
一、矩阵的创建与赋值在Matlab中,可以通过直接赋值、随机生成或者通过其他矩阵运算得到新的矩阵。
例如,我们可以使用以下代码创建一个3行4列的矩阵A,并为其赋予随机的整数值:A = randi([1, 10], 3, 4);这样,矩阵A中的元素就是1到10之间的随机整数。
二、矩阵运算Matlab提供了丰富的矩阵运算函数,包括加法、减法、乘法、除法、转置等。
我们可以通过以下代码演示这些运算的效果:B = A + 2; % 矩阵加法C = A - 2; % 矩阵减法D = A * 2; % 矩阵乘法E = A / 2; % 矩阵除法F = A.'; % 矩阵转置通过这些运算,我们可以快速对矩阵进行数值的调整和转换。
三、矩阵的索引与切片在Matlab中,我们可以使用索引和切片操作来获取矩阵中特定的元素或子矩阵。
例如,我们可以通过以下代码获取矩阵A中的第二行第三列的元素:x = A(2, 3);同样,我们也可以通过切片操作获取矩阵A中的某一行或某几行,例如:y = A(2, :); % 获取第二行的所有元素通过这样的操作,我们可以方便地提取出矩阵中我们感兴趣的部分。
四、矩阵的运算函数除了基本的矩阵运算外,Matlab还提供了许多常用的矩阵运算函数,如求矩阵的逆、行列式、特征值等。
例如,我们可以使用以下代码计算矩阵A的逆矩阵和行列式:invA = inv(A); % 矩阵的逆detA = det(A); % 矩阵的行列式这些函数可以帮助我们更方便地进行矩阵的运算和分析。
五、矩阵的应用案例矩阵在科学研究和工程设计中有着广泛的应用。
实验三 MATLAB 矩阵分析与处理、字符串操作
一、实验目的
1.掌握生成特殊矩阵的方法
2.熟练掌握矩阵的特殊操作及一些特殊函数
3.熟练掌握MATLAB 的字符串操作
4.掌握MATLAB 矩阵的关系运算及逻辑运算法则
二、实验内容
1.特殊矩阵分析与处理操作
常用的产生通用特殊矩阵的函数有:zeros( );ones( );eye( );rand( );randn( ). 下面建立随机矩阵。
(1) 在区间[20,50]内均匀分布的5阶随机矩阵。
(2) 均值为0.6、方差为0.1的5阶随机矩阵。
说明:产生(0 ,1)区间均匀分布随机矩阵使用rand 函数,假设得到了一组满
足(0,1)区间均匀分布的随机数x i ,则若想得到任意[a,b]区间上均匀分布的随机数,只需要用i i x a b a y )(-+=计算即可。
产生均值为0、方差为1的标准正态分布随机矩阵使用randn 函数,假设已经得到了一组标准正态分布随机数x i ,如果想要更一般地得到均值为i i x y ,、σμσμ+=可用的随机数方差为2计算出来。
针对本例,命令如下:
x=20+(50-20)*rand(5)
y=0.6+sqrt(0.1)*randn(5)
建立对角阵。
diag( )函数除了可以提取矩阵的对角线元素以外,还可以用来建立对角矩阵。
设V 为具有m 个元素的向量,diag(V)将产生一个m*m 对角矩阵,其主对角线元素即为向量V 的元素。
例如:
diag([1,2,-1,4])
ans= 40000
10000
20000
1 diag(V)函数也有另一种形式diag(V ,k),其功能是产生一个n*n(n=m+|k|)的对角矩阵,其第k 条对角线的元素即为向量V 的元素。
例如:
diag(1:3,-1)
ans=03000
0200
0010
000
矩阵的旋转
函数rot90(A,k)表示将矩阵A 以90度为单位对矩阵按逆时针方向进行k 倍的旋转。
rem 与mod 函数的区别
练习:
1> 写出完成下列操作的命令。
(1)建立3阶单位矩阵A 。
eye(3)
(2)建立5*6随机矩阵A ,其元素为[100,200]范围内的随机整数。
A=100+(200-100)*rand(5,6)
(3)产生均值为1,方差为0.2的500个正态分布的随机数。
B=1+sqrt(0.2)*randn(50,10)
(4)产生和A 同样大小的零矩阵。
zeros(size(A))
(5)将矩阵A 主对角线的元素加30。
B=eye(5,6)*30
A+B
(6)从矩阵A 提取主对角线元素,并以这些元素构成对角阵。
B=diag(diag(A)’) 注:转置是把列向量转变成行向量。
2> 先建立5*5的矩阵A ,然后将A 的第一行元素乘以1,第二行元素乘以2,…,第五行乘以5。
(提示:用一个对角矩阵左乘一个矩阵时,相当于用对角阵的
第一行元素乘以该矩阵的第一行,用对角阵的第二行乘以该矩阵的第二行,…,依次类推。
因此,只需按要求构造一个对角矩阵D ,并用D 左乘A 即可。
如果要对A 的每列元素乘以同一个数,可以用一个对角阵右乘矩阵A 。
)矩阵A 中的元素自已随便建立。
A=rand(5)
D=diag(1:5)
D*A
3> 使用函数,实现方阵左旋90度或右旋90度的功能。
原矩阵为A ,A 左旋后得到B ,右旋后得到C 。
⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=129631185210741A ,⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=1011
12789456123321654987121110,C B B=rot90(A)
C=rot90(A,3) 4> 将矩阵⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡--=90
1511250324153211A 用flipud 、fliplr 、rot90、diag 、triu 和tril 函数进行操作。
5> 将矩阵⎥⎦
⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=03410,61195,71521c b a 组合成两个新矩阵。
(1) 组合成一个3*4的矩阵,第一行为按列顺序排列的a 矩阵元素,第二
行为按列顺序排列的b 矩阵元素,第三行为按列顺序排列的c 矩阵元
素,即⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡043106911572151 a1=reshape(a,1,4)
b1=reshape(b,1,4)
c1=reshape(c,1,4)
d=[a1;b1;c1]
(2)按照a,b,c的列顺序组合成一个行矢量,即[1 15 2 7 5 11 9 6 10 3 4 0] d=[a1 b1 c1]
6>输入a=[2.59 –1.49 3.1 -0.2],分别使用数学函数ceil、fix、floor、round
查看各种取整的运算结果。
7> 在[0,3π]区间,求y=sin(x)的值。
(从函数值着手进行处理)要求:
(1)消去负半波,即(π,2π)区间内的函数值置0。
(2)(π/3, 2π/3 )和( 7π/3, 8π/3 )区间内取值均为sin π/3 。
2、字符串操作
建立一个字符串向量,然后对该向量做如下处理:
(1)取第1~5个字符组成的子字符串。
(2)将字符串倒过来重新排列。
(3)将字符串中的小写字母变成相应的大写字母,其余字符不变。
(4)统计字符串中小写字母的个数。
命令如下:
ch=‘ABc123d4e56Fg9’;
subch=ch(1:5) %取子字符串
revch=ch(end:-1:1) %将字符串倒排
k=find(ch>=‘a’&ch<=‘z’) %找小写字母的位置
ch(k)=ch(k)-(‘a’-’A’) %将小写字母变成相应的大写字母char(ch)
length(k) %统计小写字母的个数
练习:
1.输入字符串变量a为“hello”,将a的每个字符向后移4个,例如“h”变为
“l”,然后再逆序排放赋给变量b。
a=’hello’
a=abs(a)+4或者a(1:5)=a(1:5)+4则直接省略char(a)的过程。
或者a=a(1:5)+4不能省略下一个语句
a=char(a)
b=a(end:-1:1)。