Matlab期末考试上机题汇总(选做)

更新时间:2024-02-28 02:40:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1.求解方程组:

??x1?x2?2x3?2??3x1?x2?x3?6??x?3x?4x?4123?

2.用magic产生一个5*5的矩阵,将这个矩阵的第2列与第5列互换位置。

3.编写一个M函数,求和 S= 1+2+3+…+1000

4.定义一个矩阵,放入相应的数据,然后保存到MAT文件中,清除内存后,然后再调入内存。查看数据是否改变。

5.根据下面的方程绘制图形,y=cos(x)+x,x取值-pi-pi,然后用多项式拟合函数进行拟合。

6.创建一个5行5列的magic矩阵,删除其中的第二、三行与第三、四列。使其变成3行3列的矩阵。

7.建一个2行2列的元胞数组,a={zeros(2,2,2),’hello’;1758,int16(1:10)},请在此基础上创建一个新的8行8列元胞数组。

8.要求编写一个函数文件,将一个给定图片的所有颜色都变深(变深多少自己斟酌),其中黑色为0,白色为255

9.根据下面的方程绘制图形,y=cos(2x)+sin(x),然后用5次多项式进行拟合。

10.要求编写一个M函数,完成下列函数的求解:y=sin(x);y=sin(x+pi);y=sin(x+pi/3);y=sin(x+pi/2)自变量x的变化范围从-pi到pi,要求四个图像画在同一个图形窗体中。

11.矩阵的使用

多项式x3?4x2?7x?10在[-1 ,3 ]之间求值并画出相应的曲线。

12.元胞和结构的定义

创建一个元胞数组A{1,1}=’James Bond’ ;A{1,2}=[1 2 ;3 4 ;5 6] ;A{2,1}=pi ;A{2,2}=zeros(5) ;请读取A元胞数组中的数字5。

13.M文件的编写

??cos(x?1)?x2?1计算分段函数 y????xx?xx?10x?10

14.函数文件的编写

编写函数文件,求半径为r的圆的周长和面积。

15.图形绘制和分析

?绘制y?ex在[-3,3]上以0.3为步长各数据点的条形图。

2

16.多项式拟合

用一个三次多项式在区间[0,20]内逼近函数sin(x)。

第一章:基本概念 17.题目

答案 z1=3+4i z2=1+2i z3=2*exp(pi/6*i) z=z1*z2/z3

第二章:矩阵

18.题目:

已知a=magic(5),得到结果如下: a =

17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3

11 18 25 2 9

现在要将第2行与第4行互换,第2列与第4列互换,得到结果如下: 17 8 1 24 15 10 21 19 12 3 4 20 13 6 22 23 14 7 5 16

11 2 25 18 9 答案

pos=[1 4 3 2 5] a(pos,pos)

19.题目,见教材p85,其中的数据可以给出文本文件或者由下面的式子表达

a=[10*rand(24,1)+15,1*rand(24,1)+30,2*rand(24,1)+45],这是24行3列的一个矩阵,第一列表示温度,第二列表示湿度,第三列表示气压。要求如下:

(1) 将温度数据取出 (2) 找出一天中最高温度

(3) 按温度进行从小到大(默认)排序 (4) 求出最高温度的时刻 (5) 按温度进行从大到小排序 答案

(1) 将温度数据取出a(:,1)

(2) 找出一天中最高温度max(a(:,1))

(3) 按温度进行从小到大(默认)排序[res,pos]=sort(a(:,1)); a(pos,:) (4) 求出最高温度的时刻pos(end)

(5) 按温度进行从大到小排序[res,pos]=sort(a(:,1));

pos2=pos(24:-1:1);a(pos2,:)

第三章:数据类型 20题目 提供数据如下: 8 1 6 3 5 7 4 9 2

处理的规则如下:

(1)当值大于5时,加上10 (2)当值等于5时,变为-5

(3)当值小于5时,在原来值的基础上乘以100 得到的结果应为: 18 10 16 30 -5 17 40 19 20 答案

function myfun1 a=[8 1 6;3 5 7;4 9 2];

b=(a>5).*(a+10)+(a==5)*(-5)+(a<5).*(a*10); disp(b);

第四章:M文件编写 21.题目

求fab数列的第n项 答案

function y=fabl(n) a=zeros(1,n); a(1)=1;

a(2)=1; for i=3:n

a(i)=a(i-1)+a(i-2); end y=a(n); 22.题目

如何判断给定的三边能够构成一个三角形?是否是等边三角? 答案

function y=isTri(a,b,c) if(a+b>c&&b+c>a&&c+a>b) y=true; else y=false; end

function y=isTri(a,b,c) if(a+b>c&&b+c>a&&c+a>b) if(a==b||a==c||b==c) y=true; else y=false;

end else y=false; end

第五章:输入与输出 23.题目

给定一个声音文件,如1.wav,引入这段声音,将音量改为2倍之后,再保存成2.wav 答案

function myfun1 snd=importdata('1.wav'); snd.data=snd.data/2 sound(snd.data,snd.fs)

wavwrite(snd.data,snd.fs,'2.wav');

第六章:图形图像 24.题目

画出衰减振荡曲线y?esin3t及它的包络线y0?e,t的取值范围是[0,4π],结果如下:

?t3?t3

答案

function myfun2 t=0:pi/50:4*pi; y=exp(-t/3).*sin(3*t); y0=exp(-t/3);

plot(t,y,'r-',t,y0,'b:',t,-y0,'b:'); 25.题目 画出sin(x2?y2x?y22所表示的三维曲面,x,y的取值范围是[-8,8]

答案

function myfun3 x=-8:0.5:8; y=x'

[X,Y]=meshgrid(x,y);

Z=sin(sqrt(X.^2+Y.^2))./(sqrt(X.^2+Y.^2)); surf(X,Y,Z); colormap(cool); xlabel('X'); ylabel('Y'); zlabel('Z'); 26 题目

计算a?sin(?)?e372?,要求如下:

计算结果以format long格式显示; 使用控制指令关闭MATLAB窗口 答案

解: >> format long

>> a=sin(3/7*pi)*exp(sqrt(2*pi)) >> save('afile.mat','a'); >> exit

27 题目

?2x1?3x2?x3?2x4?8?x1?3x2?x4?6求解方程组?,要求如下: ??x1?x2?x3?8x4?7??7x1?x2?2x3?2x4?5以矩阵形式计算求解;

计算结果以format long e格式显示; 将解结果重置为行向量; 答案

>> format long e

>>A=[2,-3,1,2;1,3,0,1;1,-1,1,8;7,1,-2,2];

>> b=[8;6;7;5]; >> x=inv(A)*[8;6;7;5]; >>c=reshape(x,1,4) 28题目

绘制y=sin(2x)的曲线(x从0到2π),采用指令方式在图形中: 线条颜色为红色; 线型为虚线 添加网格

添加标题“正弦曲线”

添加图例“y=sin(2x)” 添加坐标轴标签“x或y” 答案:

>> x=0:0.1:(2*pi);

>> y=sin(2*x); >> plot(x,y,'--r') >> grid on >> title('正弦曲线'); >> xlabel('x'); >> ylabel('y'); >> legend('y=sin(2x)');

29题目

已知Fibonacci (斐波那)数列由式子ak?ak?1?ak?2,k?3,4??可以生成,其中初值为a1?a2?1,试编写出生成某项Fibonacci 数值的MATLAB 函数,并求a20的值。 答案

function Y=fib(k) if (k==1|k==0) Y=1;

else Y=fib(k-1)+fib(k-2); end

然后在命令窗口输入:fib(20) 30题目

某一电力系统信号包含四种类型的信号分量,分别是: 基频正弦分量y1 = 10 sin(2πf1t),其中f1 = 50 Hz;

3次谐波分量y2 = 2 sin(2πf2t + j),其中f2 = 150 Hz,j = 0.25π; 直流分量y3 = 2; 随机扰动分量。

试利用SIMULINK建模仿真,并在同一示波器中观察四种类型信号分量及它们叠加信号的波形。 答案

本文来源:https://www.bwwdw.com/article/lvea.html

Top