实验报告。
实验二、matlab的数值运算和程序。
课程名称: matlab应用技术专业班级: 通信1422
学生学号: 1430119231 学生姓名: 周妍智。
所属院部: 电子信息工程系指导教师: 徐树梅
2015 ——2016 学年第二学期。
实验三、matlab的数值运算和程序。
实验项目名称:matlab的数值运算和程序实验学时: 16
学生姓名周妍智实验地点: 微机11
实验日期2016.4.17实验成绩。
批改教师徐树梅批改时间。
一、实验目的和要求。
1)掌握基本的矩阵运算及常用的函数。
2)掌握matlab函数的编写及调试方法。
3)掌握matlab常用的数值运算函数。
二、实验仪器和设备。
计算机一台。
三、实验过程。
1 .一维数组在命令窗口执行下面指令,观察输出结果,体味数组创建和寻访方法,%号后面的为注释,不用输入。
rand('state',0把均匀分布伪随机发生器置为 0 状态
x=rand(1,5产生(1*5)的均布随机数组
x(3寻访数组 x 的第三个元素。
x([1 2 5寻访数组 x 的第。
一、二、五个元素组成的子数组。
x(1:3寻访前三个元素组成的子数组
x(3:end寻访除前 2 个元素外的全部其他元素。end 是最后一个元素的下标。
x(3:-1:1由前三个元素倒排构成的子数组
x(find(x>0.5由大于 0.5 的元素构成的子数组
x([1 2 3 4 4 3 2 1]) 对元素可以重复寻访,使所得数组长度允许大于原数组。
x(3) =0把上例中的第三个元素重新赋值为0。
x([1 4])=1 1把当前 x 数组的第。
一、四个元素都赋值为1。
x[3空数组的赋值操作。
运行结果:x =
ans =
ans =ans =
ans =ans =
ans =ans =
x =x =
x[3error: unbalanced or unexpected parenthesis or bracket.
2. 在命令窗口执行下面指令,观察输出结果
a=2.7358; b=33/79; %这两条指令分别给变量 a , b 赋值。
c=[1,2*a+i*b,b*sqrt(a);sin(pi/4),a+5*b,3.5+i] %这指令用于创建二维组c
m_r=[1,2,3;4,5,6],m_i=[11,12,13;14,15,16] %创建复数数组的另一种方法
cn=m_r+i*m_i由实部、虚部数组构成复数数组。
运行结果:c =
1.0000 + 0.0000i 5.4716 + 0.4177i 0.6909 + 0.0000i
0.7071 + 0.0000i 4.8244 + 0.0000i 3.5000 + 1.0000im_r =
m_i =
cn =1.0000 +11.0000i 2.0000 +12.0000i 3.0000 +13.0000i
4.0000 +14.0000i 5.0000 +15.0000i 6.0000 +16.0000i
3. 记录下面题目的程序和运行后的结果。
下列运算是否合法,为什么?如合法,结果是多少?
1) result1 = a'=【1 4;2 5;3 6】
2) result2 = a * b 不合法。
3) result3 = a + b=【3 6 2;5 8 11】
4) result4 = b * d=【31 22 22;40 49 13】
5) result5 = b ; c' ]d=【31 22 22;40 49 13;-5 -8 7】
6) result6 = a . b=【2 8 -3;4 15 30】
7) result7 = a . b=【0.5000 0.5000 -3.0000;4.000 1.667 1.2000】
8) result8 = a . c不合法。
9) result9 = a . b=【2.0000 2.0000 -0.3333;0.2500 0.6000 0.8333】
10) result10 = a . 2=【1 4 9;16 25 36】
11) result11 = a ^2不合法。
12) result11 = 2 . a=【2 4 8;16 32 64】
4、用matlab求下面的的方程组。
输出程序如下:a=[7 2 1 -2;9 15 3 -2;-2 -2 11 5;1 3 2 13];
b=[4;7;-1;0];
x=a\b输出结果为x =
5 .详读并运行下面的函数文件。体会 m 函数文件的编写结构及方法。 %后面的内容称为注释行,不被执行,起注释说明作用。
6、编写一个函数,计算下面函数的值,给出标量x的值,调用该函数后,返回y的值。
function [y]=myfun1(x)
选择一些数据测试你编写的函数。
if x<=0
y = sin(x);
elseif x>0&x<=3
y=x;else y=-x+6;
end7、编写一个函数求向量x中元素的平均值、最大值、最小值、均方根值。
function [m_x,max_x,min_x,rms_x]=myfun2(x)
方均根值(root mean square)的计算公式为:
用下面数据测试你写的函数:
1)x=sin(0:0.01:6*pi)
2)x=rand(1,200),得到的x为200个(0,1)之间均匀分布的随机数。
function [m_x,max_x,min_x,rms_x]=myfun2(x)
n=length(x);
m_x=sum(x)/n;
max_x=x(1);
min_x=x(1);
for i=2:n
if max_x max_x=x(i);
endif min_x>x(i)
min_x=x(i);
endend
y=0;for i=1:n
y=y+x(i).^2;
rms_x=sqrt(y/n);
endm_x;
max_x;
min_x;
rms_x;
8. 求编函数实现fibonacci数列(1)显示各项(2)求各项之和。
程序如下:function y = myfibonacci (x)
if x ==1
y = 1;
return
else if x ==2
y = 1;
return
endy = myfibonacci(x-1) +myfibonacci(x-2);
end9、求代数方程的5个根,并将其用星号(*)标记在复平面图上。(用roots和plot函数)。
输出程序:plot(x,y)
p=[3,4,7,2,9,12];
r=roots(p)
r =-0.8612 + 1.4377i
-0.8612 - 1.4377i
0.6737 + 1.0159i
0.6737 - 1.0159i
-0.9583 + 0.0000i
plot(r,'*b')
10、求代数方程的5个根,并将其用星号(*)标记在复平面图上。(用roots和plot函数)。
输出程序如下:
p=[1,0,0,0,0,-1];
r=roots(p)
r =-0.8090 + 0.5878i
-0.8090 - 0.5878i
0.3090 + 0.9511i
0.3090 - 0.9511i
1.0000 + 0.0000i
plot(r,'*b')
11、因式分解:
程序如下:syms s
MATLAB实验报告
课程实验报告。学年学期 2012 2013学年第1学期。课程名称 matlab与科学计算 实验名称实验一matlab数值与符号运算。实验室测量测绘实验中心计算机室。专业年级。学生姓名。学生学号。提交时间 2013.9.30 成绩。任课教师。水利与建筑工程学院。实验一 matlab数值与符号运算。1 ...
matlab实验报告
1.编写一个matlab 文本m 文件 script m file 要求 1 从键盘输入整数1,2,3,4中的任意一个。2 从键盘输入两个数 x,y 3 根据 1 中输入的整数1,2,3,4分别做加 减 乘 除运算。4 按如下格式输出结果 xy x y 或 x y 根据所做的运算依此类推。x inp...
Matlab实验报告
实验三函数的可视化与matlab作图。一 按要求绘制如下曲线 面 1.在 0,4pi 上画sin x cos x 在同一图像中,其中cos x 图像用红色小圆圈,并在函数图上标注 y sin x y cos x x轴,y轴,标题为 正弦余弦函数图像。答 clear clf,x linspace 0,...