matlab实验报告(实验3)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
开课学院及实验室:机电学院2012年11 月30日
(1)、利用逐个输入法、冒号生成法以及定数线性采样法创建以下一维数组:
X1=[1,2,3,4,5,6,7,8,9,10]
(2)、利用冒号生成法创建以下数组:X2=(1,2,3,4,9,8,7,6,5)
(3)、利用定数对数生成法创建一个第一个元素为10,最后一个元素为100,元素个数为51的
一维数组X3。
2、一维数组子数组的寻访和赋值
以冒号生成法创建一个第一个元素为0,步长为0.1,最后一个元素为2的一维数组X4,并写
出寻访或赋值的以下指令:
a、寻访X4的第6个元素;
b、同时寻访X4的第2、5、7
个元素;
c、寻访前3个元素组成的子数组;
d、寻访除前3个元素外的全部的其他元素;
e、由后三个元素倒排构成的子数组;
f、由大于0.5的元素构成的子数组;
g、把第三个元素重新赋值为0;
把当前x数组的第一、四个元素都赋值为1。
3、二维数组的创建,子数组的寻访和赋值
创建一个M文件(文件名为myMatrix.m),定义一个二维数组A,第一行为11至15、30至26共10个元素,第二行为1~10共10个元素。然后运行改M文件,生成数组AM,并按以下方式寻访该数组:
(1)寻访A的第一行;
(2)寻访A的第三列;
(3)同时寻访A的第三列和第五列;
(4)把A的各列按自左至右的次序,首尾相接生成一个“一维长列”;
(5)把A的第1行第1列、第2行第2列以及第1行第5列的元素重新赋值为10、20、30;(6)把A的第二行赋值为11~20。
4、标准数组的生成和数组操作函数
生成以下数组或矩阵:
(1)长度为4的全1行数组和4×4的全1行数组;(2)5阶单位阵;
(3)生成一矩阵A,第一行为1、2,第二行为3、4;并使用diag函数生成A的对角线元素
所组成的对角阵。
(4)生成一维数组A,其值为1~10,并使用reshape函数把其重排成2×5的数组B;(5)使用flipdim和fliplr函数对B进行翻转操作,从返回结果观察和总结各个函数的作用。注:flipdim的调用方式为:flipdim(B,1)和flipdim(B,2);其他均为function(B).
总结:flipud(B)和flipdim(B,1)是等价的,都为按行上下翻转;
fliplr(B)和flipdim(B,2)是等价的,都为按列左右翻转。
5、数组运算和矩阵运算
生成以下矩阵,
142
24100
A B ln A
797
342
π
⎡⎤
⎢⎥
⎢⎥
==
⎢⎥
⎢⎥
⎣⎦
,并进行以下计算:
(1)B的第二列乘以A的第一列;
(2)使用MATLAB帮助系统查阅max函数的使用方法,并使用它求解B中的第二列与A中的第一列逐行元素相乘所得矢量中的最大值。
提示:ln函数在matlab中为log
6、多项式的表达方式及其操作
(1) 求根为5,2+i ,2-i ,2,3的对应线性方程表达式。
(2)
求以下有理分式部分分式展开式,写出求解代码,并根据返回结果写出展开式的数学表达式
35231x x x 12x x x +++-++
(3)
使用roots 函数求方程3x 7+2x-1=0的根。
一、 心得体会
Matlab 有许多地方与c 语言很相似,同样是操作命令。但同时我们也需要细心找出其中的不同点,区分两种语言,归纳总结。比如:百分号% 在c 语言中的意义为:(1)、取模运算符;(2)、转义符。但在matlab 语言中则是注释说明的符号。而在c 语言中,注释说明所用符号为/* */ 又比如,分号“;”在matlab 中有抑制计算结果显示的作用,而在c 语言中并无此作用。
在做matlab 的时候,要极其注意细节,即使只是一个标点符号的错漏,也会造成计算结果的错误。