北京信息科技大学通信工程matlab期末考试卷含答案
- 格式:doc
- 大小:40.50 KB
- 文档页数:5
大学专业试题-Matlab期末考试及答案一、填空题(一题3分,共15分)1、标点符号_______可以使命令行不显示运算结果。
答案:%2、x为0~4,步长为0.1pi的向量,使用命令_______创建。
答案:x=0:0.1*pi:4。
3、输入矩阵A=[1 2 3;7 -5 8;9 -1 -7],使用全下标方式用A(2,2)取出元素“-5”,使用单下标方式用_______取出元素“-5”。
答案:A(5)。
4、在while表达式,语句体,End循环语句中,表达式的值____时表示循环条件为真,语句体将被执行,否则跳出该循环语句。
答案:非零。
5、要从键盘读入一个字符串并赋值给变量x,且给出提示“Hello”,应使用命令_________.答案:x=input(‘Hello’,’s’)。
二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是( D )A.abcd-2 B.xyz_2#C.@h D.X_1_a2、如果x=1:2:8,则x(1)和x(4)分别是( B )A.1,8B.1,7C.2,8D.2,73、指出下列错误的指令(B)。
A.syms a b;B.syms a,b;C.syms(‘a',’b');D.syms(‘a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。
A.invB.diagC.detD.eig5、清空Matlab工作空间内所有变量的指令是(C)。
A.clcB.clsC.clearD.clf三、程序分析题(一题10分,共20分)1、分析下面程序运行后s1,n1,s2,n2,m的值。
s1=0;s2=0;n1=0;n2=0;x=[1,-4,-8,3,10,-9,7,-3,10,8,-5,-2,2,0];m=length(x);for i=1:mif x(i)<0s1=s1+x(i);n1=n1+1;elses2=s2+x(i);n2=n2+1;end ends1,n1,s2,n2,m请回答s1,n1,s2,n2,m的结果。
一、填空题(本题满分30分,每空3分)1.设有程序A=[2,0,1,0;1,0,1,5;0, 6 ,2, 3];B=[1,2,-1;1,3,1];C=A(1:3,[1,2]);D=size(C)- length(B(2,:));F= C.*B ’将下列命令的运行结果填在横线上0*、0D = [0 -1] ; F= [2 0;2 0;0 6] .2. A=[2,3,2,1;1,2,2,1; 1,2,3,-2];A1=sum(A>A(2,1));A(2,:)=[],A2=A.^2-4A1= ; A2= ;3.P=[1,2,5,4;2,2,1,3];max(P,[ ],1)= [2 2 5 4] ;mean(P,2)= [3 2] .二、(本题满分10分)试编写计算程序画出曲线与曲面图形.22,22,)1((2).);20(cos sin (1).223322≤≤-≤≤-++=≤≤⎪⎩⎪⎨⎧==--y x y x e x z t t y t x y xπ%1 %2t=0:0.1: 2*pi; [x,y]=meshgrid(-2:0.1:2);x= sin(t).^3; z=(x.^2+1).* exp(-x.^2- y.^2+)+x .^2.*y; y= cos (t).^3; mesh(x,y,z)plot(x,y)三、(本题满分12分)编写程序解决下列问题:(1)试产生100⨯4阶矩阵使其元素在0—100之间的随机整数,可将此矩阵理解为100名同学的四门课程(课程1, 课程2, 课程3, 课程4)的成绩.(2)计算出每门课程和每位同学的平均成绩;(3)统计出总的优秀人次(90分及以上为优秀);(4)统计出四门课程成绩至少有两门课程不及格的人数.解:(1) a=fix((100-0+1)*rand(100,4));(2) mean(a) mean(a,2)(3)sum(sum(a>=90,2)==4)(4)sum(sum(a<60,2)>=2)四、(本题满10分)).50,20(]2,0[)2()),(1:(;)1(,sin )1()(11==-=∑=+n n x fun y function kx k x f nk k 分别取内图形用子图画出该函数在程序的第一句为返回该函数并保存试编写函数式文件程序设π(1). function y=fun1(x,n) (2). x=0:0.1:2*pi;y=0; y1= fun1 (x,20);for k=1:n y2= fun1 (x,50);y=y+ ((-1)^(k+1)*sin(k*x))/k; subplot(2,1,1),plot(x,y1)end subplot(2,1,2),plot(x,y2)y五、(本题满分10分)试利用微分方程的数值解法写出下列微分方程的求解步骤和MATLAB 程序.0)0(,2)0(,3='==-'+''x x t x x t x .(t 的变化区间为[0,10]).第一步:先将高阶微分方程转化为一阶微分方程组:选择状态变量x x x x ='=21,,则原方程化为2)0(,0)0(.,32112211==⎩⎨⎧='++-='x x x x t x tx x第二步:建立函数文件function dxdt = fun2(t,x)dxdt = [-3*t*x(1)+ x(2)+t; x(1)];第三步:求解微分方程,命令如下:[t,x]=ode45(@fun2,[0,10],[0;2]);)(cos cos lim .3;,)(,,1ln sin .2;2.1:,sin 022x e x x x A dx x A dx dA x s e x x x A x e 、x x x x --⎥⎥⎦⎤⎢⎢⎣⎡+=+=→-⎰计算极限并计算生成符号矩阵的根求方程下列各题运用符号运算功能计算六 的解函数求解微分方程用1)0()0()0()0(,2.4)4(='''=''='==+x x x x e x x dsolve t六、参考程序:1. solve('exp(x)=x^2+2')2.syms x sA=[x*sin(x),log(x);exp(-x),1/(s+x)]diff(A)int(A)A*A3.syms xlimit((cos(x)-cos(x)^(1/2))/x/(exp(sin(x))-1))4.dsolve('D4x+x=2*exp(t)','x(0)=1','Dx(0)=1','D2x(0)=1','D3x(0)=1')⎪⎩⎪⎨⎧=-++=--++03320224:.2122212212221x x x x x x x x x fsolve 组求解下面的非线性方程函数以及符号运算功能用七解一:function y=fc(x)y(1)=4*x(1).^2+x(2).^2+2*x(1).*x(2)-x(2)-2y(2)=2*x(1).^2+x(2).^2+3*x(1).*x(2)-3y=[y(1) y(2)];x0=[1 1];fsolve(@fc,x0)解二: syms x1 x2[x1 x2]=solve(‘4*x1^2+ x2^2+2* x1* x2- x2-2=0’,’ 2*x1^2+ x2^2+3* x1* x2-3=0’,’ x1’,’ x2’)《MA TLAB程序设计》参考程序一、(30分)1.D =0 -1F =2 02 00 62.A1 =1 3 3 0A2 =0 5 0 -3-3 0 5 03.max(P,[ ],1)=2 2 5 4 mean(P,2)=324.x=155.b =0 1 4-1 0 1-4 -1 06.z =20107.285二、(10分)%1t=0:0.1: 2*pi;x= sin(t).^3;y= cos (t).^3;plot(x,y)%2[x,y]=meshgrid(-2:0.1:2);z=(x.^2+1).* exp(-x.^2- y.^2+)+x.^2.*y; mesh(x,y,z)三、(16分)syms xlimit((x-1)*log(x)/(exp(x-1)-1),x,1)%2solve('exp(x)-3*cos(x)+1=0')%3syms xM=[ exp(-x), x;sin(x),exp(-0.1*x)* cos(3*x)]diff(M,2)int(M,x,0,pi)%4 syms t xdsolve('Dx-6*x=exp(-t) ','x(0)=1')四、(12分)x=0.5:9.5;y=[ 0.16, 0.40, 0.66, 0.75, 0.88, 1.0, 1.1, 1.1, 1.2, 1.3];x1=1./x;y1=1./y;p=polyfit(x1,y1,1);a=p(2); b= p(1);ye=x./(a*x+b);plot(x,y,'ro', x, ye, 'b-')grid onxlabel('自变量x ')ylabel('因变量y ')title('因变量y与自变量x的拟合曲线图')五、(12分)%参考程序cj=round(normrnd(70,10,100,4));for i=1:100for j=1:4if cj(i,j)>100 cj(i,j)=100;elseif cj(i,j)<0 cj(i,j)=0;endendendkmean=round(mean(cj))disp('课程1 课程2 课程3 课程4')disp(sprintf(' %4d%7d%8d%8d ' ,kmean(1),kmean(2),kmean(3),kmean(4))) studentmean=round(mean(cj,2));studentnumber=[1:100]';[studentnumber, studentmean]c=sum(sum(cj>=90))d=sum(sum(cj<60,2)>=2)六、(10分)(1). function y=fun1(x,n)y=0;for k=1:ny=y+ ((-1)^k*sin(k*x))/k;endy(2). x=0:0.1:2*pi;y1= fun1 (x,20);y2= fun1 (x,50);subplot(211),plot(x,y1)subplot(212),plot(x,y2)七、(10分)第一步:先将高阶微分方程转化为一阶微分方程组:选择状态变量x x x x ='=21,,则原方程化为2)0(,0)0(.,32112211==⎩⎨⎧='++-='x x x x t x tx x第二步:建立函数文件function dxdt = fun2(t,x)dxdt = [-3*t*x(1)+ x(2)+t; x(1)];第三步:求解微分方程,命令如下:[t,x]=ode45(@fun2,[0,10],[0;2])补充:1.matlab 中清屏的命令是———clc2.matlab 中用于清除工作空间变量的命令是——clear3.在【0,5】上求函数f=(x-3)^2-1的最小值。
matlab期末考试题目及答案1. MATLAB基础操作题目:请在MATLAB中创建一个名为`myVector`的向量,包含元素1, 2, 3, 4, 5。
答案:在MATLAB命令窗口中输入以下代码即可创建向量:```matlabmyVector = [1, 2, 3, 4, 5];```2. 矩阵运算题目:给定矩阵A和B,计算它们的乘积。
其中矩阵A为:```A = [1 2; 3 4]```矩阵B为:```B = [5 6; 7 8]```答案:在MATLAB中计算矩阵A和B的乘积,可以使用以下代码:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A * B;```结果矩阵C为:```C = [19 22; 43 50]```3. 条件语句题目:编写一个MATLAB函数,判断一个给定的数是否为素数,并返回布尔值。
答案:以下是一个简单的MATLAB函数实现:```matlabfunction result = isPrime(n)if n <= 1result = false;elsefor i = 2:sqrt(n)if mod(n, i) == 0result = false;return;endendresult = true;endend```使用该函数时,只需调用`isPrime(7)`即可判断7是否为素数。
4. 循环结构题目:使用MATLAB编写一个循环,计算并输出1到100之间所有偶数的和。
答案:可以使用以下代码实现:```matlabsumEven = 0;for i = 1:100if mod(i, 2) == 0sumEven = sumEven + i;endenddisp(sumEven);```该代码将输出1到100之间所有偶数的和。
5. 函数编写题目:编写一个MATLAB函数,实现对一个向量进行排序,并返回排序后的向量。
答案:以下是一个简单的MATLAB函数实现:```matlabfunction sortedVector = sortVector(inputVector)sortedVector = sort(inputVector);end```使用该函数时,只需调用`sortedVector = sortVector([5, 2, 8, 3, 1, 6, 4])`即可得到排序后的向量。
matlab期末考试题及答案
MATLAB期末考试题及答案
1. 填空题
- MATLAB中用于创建向量的命令是______。
- 若要在一个矩阵中找到最大元素,可以使用函数______。
- MATLAB中用于绘制三维曲面图的命令是______。
2. 选择题
- 下列哪个命令用于计算矩阵的行列式?
A. det
B. diag
C. inv
D. eig
- 正确答案是A。
3. 简答题
- 描述MATLAB中如何实现矩阵的转置。
4. 编程题
- 编写一个MATLAB函数,计算并返回一个向量中所有元素的平方和。
答案
1. 填空题
- MATLAB中用于创建向量的命令是`[ ]`。
- 若要在一个矩阵中找到最大元素,可以使用函数`max`。
- MATLAB中用于绘制三维曲面图的命令是`surf`。
2. 选择题
- 下列哪个命令用于计算矩阵的行列式?
A. det
B. diag
C. inv
D. eig
- 正确答案是A。
3. 简答题
- 矩阵的转置可以通过在矩阵后面添加撇号(`'`)来实现。
例如,如果A是一个矩阵,那么`A'`就是A的转置。
4. 编程题
```matlab
function sumOfSquares = vectorSquareSum(vector)
sumOfSquares = sum(vector.^2);
end
```
- 上述函数接受一个向量`vector`作为输入,计算并返回向量中所有元素的平方和。
matlab期末考试题目及答案1. 题目:编写一个MATLAB函数,实现矩阵的转置操作。
答案:可以使用`transpose`函数或`.'`操作符来实现矩阵的转置。
例如,对于一个矩阵`A`,其转置可以通过`A'`或`transpose(A)`来获得。
2. 题目:使用MATLAB求解线性方程组Ax=b,其中A是一个3x3的矩阵,b是一个3x1的向量。
答案:可以使用MATLAB内置的`\`操作符来求解线性方程组。
例如,如果`A`和`b`已经定义,求解方程组的代码为`x = A\b`。
3. 题目:编写MATLAB代码,计算并绘制函数f(x) = sin(x)在区间[0, 2π]上的图像。
答案:首先定义x的范围,然后计算对应的函数值,并使用`plot`函数绘制图像。
代码示例如下:```matlabx = linspace(0, 2*pi, 100); % 定义x的范围y = sin(x); % 计算函数值plot(x, y); % 绘制图像xlabel('x'); % x轴标签ylabel('sin(x)'); % y轴标签title('Plot of sin(x)'); % 图像标题```4. 题目:使用MATLAB编写一个脚本,实现对一个给定的二维数组进行排序,并输出排序后的结果。
答案:可以使用`sort`函数对数组进行排序。
如果需要对整个数组进行排序,可以使用`sort`函数的两个输出参数来获取排序后的索引和值。
代码示例如下:```matlabA = [3, 1, 4; 1, 5, 9; 2, 6, 5]; % 给定的二维数组[sortedValues, sortedIndices] = sort(A(:)); % 对数组进行排序sortedMatrix = reshape(sortedValues, size(A)); % 将排序后的值重新构造成矩阵disp(sortedMatrix); % 显示排序后的结果```5. 题目:编写MATLAB代码,实现对一个字符串进行加密,加密规则为将每个字符的ASCII码值增加3。
模拟试题B一、填空题(2’×18=36’)1、Matlab系统由、、、和5大部分组成。
2、Matlab的基本运算符包括、、等。
3、在Matlab编辑器中运行程序的快捷键是:。
4、函数rand表示:;randn函数表示:;size函数表示:。
5、实现Fourier变换在Matlab中的对应函数为:;Laplace变换的函数:。
6、函数M文件的有效第一行的执行标识为:。
7、通常程序调试有两种方法:和利用。
8、Matlab提供的图形用户界面开发环境是:。
二、简答题(6’×4=24’)1、在命令行中输入“save Filename1a b”表示?2、分析以下函数执行过程,回答问题:function c=testarg1(a,b)if(nargin==1)c=a.^2;elseif(nargin==2)c=a+b;end如果用户使用一个参数调用函数testarg1,函数执行什么功能?如果使用两个参数调用函数testarg1,函数又执行什么?3、打开和关闭文件的函数是什么?分别说明其作用。
4、新建Simulink仿真模型文件的方法是什么?三、程序设计及分析(6’×6+4’=40’)1、编程实现函数3()25f x x x =--的根?2、将下列字符矩阵S 转换为数字矩阵('1''2''3''4'S ⎡⎤=⎢⎥⎣⎦)?3、把矩阵A ,B 分别在垂直方向,水平方向连接,A=[123],B=[456]?4、求()1020x f x x =-+=在00.5x =附近的根?5、编程实现一元二次方程20ax bx c ++=?6、绘制函数图形:1sin(),2cos()y x y x ==。
要求:(1)[]0,2x π∈;(2)数据采样间隔/50π?(3)设置网格;(4)添加图形标注;(5)两幅图叠加在一张图中。
模拟试题B及答案一、填空题(2’×18=36’)9、Matlab系统由Matlab开发环境、Matlab语言、Matlab数学函数库、Matlab图形处理系统和Matlab应用程序接口5大部分组成。
大学专业试题-Matlab期末考试及答案一、选择题(每小题2分,共22分)1. 在matlab中____C____用于括住字符串。
A.,B.;C.‘’D.“”2. 在matlab的命令窗口中执行__A_______命令,可将命令窗口中所有变量清空。
A. clearB. clcC. echo offD. cd3.下列___D____是合法变量。
A. 1_1B. a/bC.变量1D. eps4产生所有元素均为1的2行3列矩阵的命令是_A______。
A. ones(2,3)B.ones(3,2)C.eye(2,3)D.eye(3,2)5.已知a=0:4,b=1:5,下面的运算表达式出错的是_D_______。
A. a+bB. a./bC. a.*bD. a*b6. subplot(2,1,2)是指__B_______的子图。
A.两行一列的上图B.两行一列的下图C.两列一行的左图D.两列一行的右图7.在多个句柄对象中,句柄是1的应该是_C_____对象。
A.根对象B.坐标轴C.窗口D.屏幕8.使用from:step:to方式生成向量,“-3:1:3”,其中-3,1,3分别是:(B)A、步长值,结束值,开始值B、开始值,步长值,结束值C、结束值,步长值,开始值D、开始值,结束值,步长值9.i=2; a=2i; b=2*i; c=2*sqrt(-1); 程序执行后a, b, c的值分别是多少?(C )A.a=4, b=4, c=2.0000iB.a=4, b=2.0000i, c=2.0000iC.a=2.0000i, b=4, c=2.0000iD.a=2.0000i, b=2.0000i, c=2.0000i10. 下列关于脚本文件和函数文件的描述中不正确的是(B )A. 去掉函数文件第一行的定义行可转变成脚本文件;B. 函数文件可以在命令窗口直接运行;C. 脚本文件可以调用函数文件;D. 函数文件中的第一行必须以function开始;11.下列对条件语句、分支语句、固定循环次数语句、不定循环次数语句关键字排序正确的是( B)A. if else end; for end; switch case end; while end;B. if else end; switch case end; for end; while end;C. for end; if else end; while end; switch case end;D. while end; for end; switch case end; if else end;二、填空题(20分,1空2分)1. 求可逆矩阵A的逆矩阵的指令是__inv(A) __.2. A=[0 2 3 0],B=[4 5 0 0],则X=A&B的显示结果为__ 0 1 0 0___.3. Matlab中用来表示不确定值的变量是_NaN_。
一、填空题(每空1分,20分)1、MATLAB常用操作界面包括、工作空间窗口、、、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。
2、MATLAB中Inf或inf表示、NaN或nan表示、nargout表示。
3、MATLAB中逗号主要用作;用作输入量与输入量之间的分隔符;。
4、工作空间浏览器主要用于内存变量的、和。
5、MATLAB实现将全下标转换为单下标的指令为、据单下标换算出全下标的指令为。
6、二维数组的标识有、、“逻辑1”标识。
、在一个元胞数组A中寻访第2行第3列元胞元素用;寻访数组第2行第3列元胞中所存的内容用。
8、4、MATLAB中clf用于、clc用于、clear用于。
二、简答题(每题5分,共20分)1、简述MATLAB历史指令窗的主要作用。
2、简述空数组的功用。
3、简述MATLAB函数的基本结构。
4、简述绘制二维图形的一般步骤。
三、阅读程序并回答问题(每题4分,共28分)、写出下列指令运行结果。
=zeros(2,4);(:)=1:8;=[2 3 5];(s)a=[10 20 30]'(s)=Sa、写出下列指令运行结果。
=reshape(1:16,2,8)eshape(A,4,4)=[1 3 6 8 9 11 14 16]; (s)=0、写出下列指令运行结果。
=[1,2;3,4];=[-1,-2;2;1];=3;.*B*B.*AS*B4、下面的函数主要完成什么功能?function f=factor(n)f n<=1f=1;lsef=factor(n-1)*n;nd、写出下列指令运行结果。
(1,1)={'this is cell'};{1,2}={[1 2 3;4 5 6]};{2,1}=[1+2*i];{2,2}=A{1,2}{1}+(A{1,2}{1}(1,1)+A{1,2}{1}(2,2)); elldisp(A)、下面的程序完成功能是什么?=0:pi/50:4*pi;0=exp(-t/3);=exp(-t/3).*sin(3*t);lot(t,y,'-r',t,y0,':b',t,-y0,':b')label(‘\bf\it t’);label(‘\bf\it y’);rid on;四、编程题(32分)price<200 没有折扣200≤price<500 3%折扣500≤price<1000 5%折扣1000≤price<2500 8%折扣2500≤price<5000 10%折扣000≤price 14%折扣入所售商品的价格,求其实际销售价格。
第一套华东交通大学2015-2016学年第一学期Matlab期末考试一、填空题(4*6=24分)1、在MATLAB^令窗口中的“ >>”标志为MATLAB勺_提示符,标志为提示符。
2、符号表达式sin(2*a+t)+m 中独立的符号变量为__ 。
3、在通常情况下,左除x=a\b是—的解,右除x=b/a是—的解,一般情况下,_______________ 。
4、为了使两个plot的图形在同一个坐标显示,可以使用 _______ 令进行图形保持;可以使用—命令为图形添加网格。
5、倘若要是对x进行赋值,从5到25,间隔是0.1,为_________ ;倘若要是对x进行赋值,从2到20,中间间隔100个点,为 ______6、A=[1,2;3,4];B=[1,0;0,1]; A*B= _ , A.*B=_ _ ;二、选择题(4*6=24分)7、如果x=1: 2 : 8,则x(1)和x⑷分别是()A. 1,8B. 1, 7C. 2, 8D. 2, 78、运行如下程序后,输入9回车,命令窗口( comma nd win dows)显示的结果为()c=input('请输入一个字符','s');if c>='A' & c<='Z'disp(setstr(abs(c)+abs('a')-abs('A')));elseif c>='a'& c<='z'disp(setstr(abs(c)- abs('a')+abs('A')));elseif c>='0' & c<='9'disp(abs(c)-abs('0'));else disp(c); endA. 9B. 8C. 7D. 69、MATLA表达式2*2A3A2的结果是()A. 128B. 4096C. 262144D. 25610、在循环结构中跳出循环,执行循环后面代码的命令为()(A) return (B) break (C) con ti nue (D) keyboard11、在图形指定位置加标注命令是()A. title(x,y, ^y=sin(x) ?B. xlabel(x,y, ?y=s in(x)C. text(x,y, ?y=sin(x) ?);D. lege nd(x,y, ?y=s in(x)12、下列哪个变量的定义是不合法的()。
一、填空题
1.命令clear all的含义是:清除工作窗口中的所有变量。
2.在屏幕上显示提示内容“输入年龄”,等待从键盘键入,用的指令是input(‘输入年龄’) 。
3.M atlab预定义变量nargin表示函数的输入变量个数,nargout 表示函数的输出变量个数。
4.读取指定图形文件“car.jpg”的数据到A,用的指令是A=imread(’car.jpg’,’jpg’) 。
5.若a=[1:3;4:6;7:9],则执行n=sum(size(a))后,n的结果为
6 。
6.若a=[1,3,5;2,4,6],则mean(1<a & a<4)=
[0.5,0.5,0] 。
7.若a=[1,2,3;2,0,5],则执行b=all(a)后,b=[1,0,1] 。
8.在循环结构中跳出循环,但继续下次循环的命令为continue 。
9.已知syms t x,且x=sin(t),则subs(x,t,pi/2)=
1 。
10.M脚本文件和M函数文件的主要区别是M函数文件有函数定义行和M函数可以进行变量的传递。
二、判断题
1. 按二进制保存数据命令用fread。
(×)
2.a是一个矩阵,a.*2与a*2的结果一样。
(√)
3. Matlab 中默认的数据类型是double 型。
( √ )
4. isnumeric 函数判断输入参数是否为数值类型。
( √ )
5. 脚本文件和函数文件的区别在于脚本文件没有注释行。
( × )
6. t=-2.5,执行y=fix(t)后,y 的结果是-3。
( × )
7. 通常,Simulink 仿真过程分为初始化和模型执行两个阶段。
( √ )
三、简答题
1. 设222()x y z x e -+=,求定义域x=[-3,3],y=[-3,3]内的z 值(网格取0.1见方),并
绘制出三维曲面。
x=-3:0.1:3; y=x;
[X,Y]=meshgrid(x,y);
Z=X.^2.*exp(-X.^2+Y .^2);
surf(X,Y ,Z);
2. 编程求系统324()364s
H s s s s =+++的零、极点向量和增益系数。
num=[0,0,4,0];
den=[1,3,6,4];
[z,p,k]=tf2zp(num,den);
;
3. 已知滤波器的系统函数221
()0.50.8z H z z z +=++,画出它的幅频和相频曲线。
B=[2,1];
A=[1,0.5,0.8];
W=0:0.1:2*pi*5;
freqz(B,A,W)
4.创建一个3* 4随机阵,提取第一行和第二行中大于0.5的元素组成矩阵。
A=rand(3,4);
B=A([1,2],:);
C= B>0.5; C=find(B>0.5)
D=B(C); D=B(C)
5.在某处测得海洋不同深度处的水温如下:利用分段线性插值函数,求在深度为500m、1000m、1500m处的水温。
x=[446,714,950,1422,1634];
y=[7.04,4.28,3.40,2.54,2.13];
X=440:10:1800;
Y=interp1(x,y,X,'*linear');
for i=1:137
if X(i)==500
y1=Y(i);
elseif X(i)==1000
y2=Y(i);
elseif X(i)==1500
y3=Y(i);
end
end
6.设f(x)=x^5-4x^4+3x^2-2x+6,取x=[-2,8]之间函数的值(取100个点),画出曲线。
function y=exam6(x)
y= x.^5-4.*x.^4+3.*x.^2-2.*x+6’;
>> a=linspace(-2,8,100);
>>b=exam6(a);
>>plot(a,b)
7.在[-10,10;-10,10]
范围内画出函数的三维图形。
z=
x=-10:0.1:10; y=x;
[X,Y]=meshgrid(x,y);
a=sqrt(X.^2+Y.^2);
Z=sin(a)./(a+eps);
mesh(X,Y,Z);
8.若x(n)=cos(npi/6)是一个N=12的有限长序列,计算它的DFT并画出图形。
n=0:11; x=cos(n*pi/6);
k=-200:200; w=(pi/100)*k;
X=x*(exp(-j*pi/100)).^(n’*k);
magX=abs(X); angX=angle(X);
subplot(2,1,1); plot(w/pi,magX); grid
subplot(2,1,2); plot(w/pi,angX); grid
9.编写一个函数文件,函数实现的功能:若输入的是一个非数值类型的数据,
则返回字符串“出错!”;否则,若输入的数大于1,则返回字符串“大于1”,其余情况,返回字符串“小于1”。
function y=panduan(x)
if ~isnumeric(x)
y=(’出错!’);
else if x>1
y=(‘大于1!’);
else
y=(‘小于1!’);
end
end。