MATLAB期末大作业
matlab期末复习题及答案
![matlab期末复习题及答案](https://img.taocdn.com/s3/m/dad4d328ce84b9d528ea81c758f5f61fb636287e.png)
matlab期末复习题及答案1. MATLAB基础操作在MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素分别为1, 2, 3, 4, 5, 6, 7, 8, 9?答案:在MATLAB中,可以通过直接输入矩阵元素来创建矩阵。
例如,要创建一个名为"myMatrix"的3x3矩阵,可以使用以下命令:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```这样,MATLAB就会创建一个3x3的矩阵,其元素按照行顺序排列。
2. 矩阵运算给定两个矩阵A和B,其中A = [1 2; 3 4],B = [5 6; 7 8],计算矩阵A和B的和。
答案:在MATLAB中,可以使用加号(+)来计算两个矩阵的和。
对于给定的矩阵A和B,可以使用以下命令来计算它们的和:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```执行上述命令后,矩阵C的结果将是:```C = [6 8;10 12];```3. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为质数,并输出相应的信息。
答案:在MATLAB中,可以使用if-else语句来判断一个数是否为质数。
以下是一个简单的脚本示例:```matlabn = input('请输入一个数:');if mod(n, 2) == 0 && n > 2disp('该数不是质数');elseif n == 1disp('1不是质数');elseisPrime = true;for i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;break;endendif isPrimedisp('该数是质数');elsedisp('该数不是质数');endend```该脚本首先接收用户输入的数n,然后通过一个for循环检查n是否有除了1和它自身以外的因数,从而判断n是否为质数。
MATLAB期末大作业模板
![MATLAB期末大作业模板](https://img.taocdn.com/s3/m/10bae5752e3f5727a5e962c3.png)
MATLAB应用技术期末大作业专业:姓名:学号:分数一、在一个图形窗口中以子图形式同时绘制正弦、余弦、正切、余切曲线。
请写下完整代码,展示图形结果。
(请标注题图和坐标轴,用不同颜色和不同线型分别绘制以上曲线)。
(15分)二、某公司员工的工资计算方法如下。
(1)工作时数超过120小时者,超过部分加发15%。
(2)工作时数低于60小时者,扣发700元。
(3)其余按每小时84元发。
根据员工的工时数,计算应发工资。
请写下完整的程序代码,并任意输入一工时数(使用input 函数),将结果展示(使用disp 函数)利用该代码进行计算工资,请写下计算结果。
(15分)三、编写一个函数文件,使其能够产生如下的分段函数:⎪⎩⎪⎨⎧≥<<≤-=66225.0,25.05.15.0)(x x x x xx f请编写完整的函数文件(保存函数文件名为hanshu.m ),并编写脚本文件代码,任意输入x 值(使用input 函数),在脚本文件中调用函数文件求)(x f ,展示结果(使用disp 函数),请写下计算结果。
(15分)四、将5个学生的6门功课的成绩存入矩阵P 中,进行如下处理:(1)分别求每门课的最高分、最低分及相应学生的序号。
(2)分别求每门课的平均分和标准差。
(3)5门课总分的最高分、最低分及相应学生序号。
(4)将5门课总分按从大到小顺序存入score 中,相应学生序号存入num 。
请将各小题的运行代码完整写下来,并写下运行结果。
(20分)五、请利用所学的MATLAB 知识,自主设计一个图形用户界面,请完整记录它的设计过程,需提供文字、代码和图片,以充分说明设计的图形用户界面可实现的功能。
(35分)。
MATLAB期末大作业
![MATLAB期末大作业](https://img.taocdn.com/s3/m/4a2d934a2e3f5727a5e96227.png)
学号:姓名:《Matlab/Simulink在数学计算与仿真中的应用》大作业1.假设地球和火星绕太阳运转的半径分别为r和2r,利用comet指令动画显示从地球到火星的转移轨迹(r可以任意取值,要求实时显示探测器、太阳、地球和火星的位置)。
解函数function comet(varargin)[ax,args,nargs] = axescheck(varargin{:});error(nargchk(1,3,nargs,'struct'));% Parse the rest of the inputsif nargs < 2, x = args{1}; y = x; x = 1:length(y); endif nargs == 2, [x,y] = deal(args{:}); endif nargs < 3, p = 0.10; endif nargs == 3, [x,y,p] = deal(args{:}); endif ~isscalar(p) || ~isreal(p) || p < 0 || p >= 1error('MATLAB:comet:InvalidP', ...'The input ''p'' must be a real scalar between 0 and 1.'); End指令 %particle_motiont = 0:5:16013;r1=6.7e6;%随便给定参数%---------------------------r2=2*r1;g=9.8;R=6.378e6;m=g*R^2;%内轨道v_inner=sqrt(m/r1);w_inner=v_inner/r1;x_inter=r1*cos(w_inner*t);y_inter=r1*sin(w_inner*t);%外轨道v_outer=sqrt(m/r2);w_outer=v_outer/r2;x_outer=r2*cos(w_outer*t);y_outer=r2*sin(w_outer*t);%控制器转移轨道a=(r1+r2)/2;E=-m/(2*a);V_near=sqrt(m*(2/r1-2/(r1+r2)));%转移轨道在近地点的速度V_far=sqrt(m*(2/r2-2/(r1+r2)));%转移轨道在远地点的速度h=r1*V_near;%由于在近地点的速度垂直于位置失量, h是转移轨道的比动量矩e=sqrt(1+2*E*h^2/m^2);%e为椭圆轨迹的偏心率TOF=pi*sqrt(a^3/m);%转移轨道是椭圆的一半及飞行时间是周期的一半(开普勒第三定律)w=pi/TOF;%椭圆轨迹的角速度c=a*e;b=sqrt(a^2-c^2);x_ellipse=a*cos(w*t)-0.5*r1;y_ellipse=b*sin(w*t);%动画显示运动轨迹x=[x_inter;x_outer;x_ellipse]';y=[y_inter;y_outer;y_ellipse]';comet(x,y)%---------------------------动态图像如下:2.利用两种不同途径求解边值问题dfdxf gdgdxf g f g=+=-+==34430001,,(),()的解.途径一:指令syms f g[f,g]=dsolve('Df=3*f+4*g,Dg=-4*f+3*g','f(0)=0,g(0)=1');disp('f=');disp(f)disp('g=');disp(g)结果(Matlab 7.8版本)f=i/(2*exp(t*(4*i - 3))) - (i*exp(t*(4*i + 3)))/2g=exp(t*(4*i + 3))/2 + 1/(2*exp(t*(4*i - 3)))(Matlab 6.5版本)f=exp(3*t)*sin(4*t)g=exp(3*t)*cos(4*t)>>途径二:%problem2function dy=problem2(t,y)dy = zeros(2,1);dy(1) = 3*y(1)+4*y(2);dy(2) = -4*y(1)+3*y(2);[t,y] = ode45('problem2',[0 2],[0 1]);plot(t,y(:,1),'r',t,y(:,2),'b');图23.假设著名的Lorenz 模型的状态方程表示为⎪⎩⎪⎨⎧-+-=+-=+-=)()()()()()()()()()()()(322133223211t x t x t x t x t x t x t x t x t x t x t x t x σρρβ 其中,设28,10,3/8===σρβ。
matlab期末考试题目及答案
![matlab期末考试题目及答案](https://img.taocdn.com/s3/m/6d468a867e192279168884868762caaedd33baec.png)
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。
matlab期末考试题及答案
![matlab期末考试题及答案](https://img.taocdn.com/s3/m/76ffc3255bcfa1c7aa00b52acfc789eb162d9e5d.png)
matlab期末考试题及答案MATLAB期末考试题及答案一、选择题(每题2分,共20分)1. MATLAB中用于创建向量的函数是:A. vectorB. arrayC. linspaceD. ones答案:D2. 下列哪个命令可以计算矩阵的行列式?A. detB. diagC. traceD. rank答案:A3. 在MATLAB中,以下哪个选项是用于绘制三维图形的?A. plotB. plot3C. barD. scatter答案:B4. MATLAB中,用于计算向量范数的函数是:A. normB. meanC. medianD. std答案:A5. 下列哪个命令可以用于创建一个二维数组?A. array2dB. matrixC. create2dD. make2d答案:B6. MATLAB中,用于求解线性方程组的函数是:A. solveB. linsolveC. equationD. linprog答案:A7. 以下哪个函数可以用于生成随机数?A. randB. randomC. randnD. randi答案:A8. MATLAB中,用于实现循环结构的关键字是:A. loopB. forC. whileD. repeat答案:B9. 下列哪个命令可以用于绘制函数图形?A. plotB. graphC. drawD. functionplot答案:A10. MATLAB中,用于计算矩阵特征值的函数是:A. eigB. eigenvalueC. characteristicD. eigen答案:A二、简答题(每题5分,共30分)1. 简述MATLAB中矩阵的基本操作有哪些?答案:矩阵的基本操作包括矩阵的创建、矩阵的加法、减法、乘法、转置、求逆、求行列式等。
2. MATLAB中如何实现条件语句?答案:MATLAB中实现条件语句主要使用if-else结构,也可以使用switch-case结构。
3. 请解释MATLAB中的函数定义方式。
MATLAB期末考试试题(全12套)
![MATLAB期末考试试题(全12套)](https://img.taocdn.com/s3/m/f0a13853a8956bec0975e36f.png)
MATLAB期末考试试题一、填空(30分)1. 表达式 (3>2)*(5~=5)的类型是(double)。
2. 表达式 (5<2)*120的值是( 0 )。
3. 表达式 (5>2)*(6~=5)的值是( 1 )。
4. 表达式 char(65)=='A' 的值是( 1 )。
5. 表达式 char(65)+1 的值是(66 )。
6. 表达式 'A'+1的值是( 66 )。
7. 表达式 'A'+'B' 的值是(131 )。
8. 存储double型数据占用内存(8 )字节。
9. 存储single型数据占用内存( 4 )字节。
10. 清除命令窗口内容的命令是( clc )。
11. 删除工作空间中保存的变量x的命令是(clearx )。
12. 将双精度实数的显示格式设置成15位定点小数格式的命令是( format long )。
13. 将横坐标轴标签设置成“时间(秒)”的语句是(xlabel('时间(秒)') )。
14. 设置图例的Matlab库函数名是( legend )。
15. 绘制三维线图的Matlab库函数名是( plot3 )。
二、选择题(30分)1. 执行语句x=55后,Matlab将创建变量x,为其分配的存储空间的大小为(C)A)2字节 B)4字节 C)8字节 D)16字节2. 执行语句y=66后,Matlab将创建变量y,其类型为(D )A)int8 B)int16 C)single D)double3. 下列整数类型中,不能参与任何运算的类型为( D )A)int8 B)int16 C)int32 D)int644. 设已执行语句x=3>2; y=x>0后,下面表达式中错误的是( D )A)x+y B)x-y C)x*y D)x/y5. 下列的数组写法中错误的是(C)A)[1:9] B)1:9 C)[1:2:9;2:2:8] D)[1:3;4:6;7:9]6. 设有数组定义:x=[1,2,3,4,5,6], y=x' ,下列表达式中正确的是( D)A)y+x B)y-x C)y./x B)y*x7. 执行语句for x=1:2:10, disp(x), end,循环体将执行几次( B)A)10次 B)5次 C)1次 D)0次8. 函数首部格式为function [out1,out2]=myfunc(in1,in2),不正确的调用格式是(C )A)[x,y]=myfunc() B)myfunc(a,b) C)[x,y]=myfunc(a)D)x=myfunc(a,b)9. 语句 x=-1:0.1:1;plot([x+i*exp(-x.^2);x+i*exp(-2*x.^2);x+i*exp(-4*x.^2)]' ),绘制(B )A)1条曲线 B)3条曲线 C)21条曲线 D)0条曲线10. 下列哪条指令是求矩阵的行列式的值 ( C )A) inv B) diag C) detD) eig三、解答题(40分)1.已知多项式323)(2345+++-=x x x x x f ,1331)(23--+=x x x x g ,写出计算下列问题的MATLAB 命令序列(1))(x f 的根解:>> p1=[3,-1,2,1,3];>> x=roots(p1)x =0.6833 + 0.9251i0.6833 - 0.9251i-0.5166 + 0.6994i-0.5166 - 0.6994i(2))(x g 在闭区间[-1,2]上的最小值解:>> [y,min]=fminbnd(@(x)((1/3)*x.^3+x.^2-3*x-1),-1,2)y =1.0000min =-2.66672.已知 ax -ax e -ex +ay =sin(x +a)+a ln 22, 写出完成下列任务的MATLAB 命令序列。
matlab期末试题及答案
![matlab期末试题及答案](https://img.taocdn.com/s3/m/c4b7df856037ee06eff9aef8941ea76e58fa4aaa.png)
matlab期末试题及答案介绍:本文提供了一个MATLAB期末试题及答案的样例,以展示如何按照合适的格式来撰写。
以下是试题及答案的内容。
试题一:试题描述:请编写一个MATLAB程序,输入两个整数a和b,计算并输出它们的和、差、积和商。
```MATLABa = input('请输入整数a:');b = input('请输入整数b:');sum = a + b;diff = a - b;product = a * b;quotient = a / b;disp(['和:', num2str(sum)]);disp(['差:', num2str(diff)]);disp(['积:', num2str(product)]);disp(['商:', num2str(quotient)]);```答案详解:本题要求输入两个整数a和b,然后计算它们的和、差、积和商,并进行输出。
我们利用MATLAB的input函数实现用户输入,然后进行相关计算,并利用disp函数输出结果。
其中,num2str函数用于将数字转换为字符串。
试题二:试题描述:请编写一个MATLAB程序,生成并输出一个5x5的单位矩阵。
```MATLABI = eye(5);disp(I);```答案详解:本题要求生成一个5x5的单位矩阵,并进行输出。
我们可以利用MATLAB的eye函数来实现这一目标。
eye函数用于创建一个对角线上元素为1的矩阵,而其他元素为0的矩阵。
在本题中,我们生成了一个5x5的单位矩阵,并利用disp函数进行输出。
试题三:试题描述:请编写一个MATLAB程序,计算并输出1到100之间的所有偶数之和。
```MATLABsum = 0;for i = 2:2:100sum = sum + i;enddisp(['1到100之间的所有偶数之和为:', num2str(sum)]);```答案详解:本题要求计算1到100之间的所有偶数之和,并进行输出。
MATLAB期末大作业
![MATLAB期末大作业](https://img.taocdn.com/s3/m/2c74686e8e9951e79b89271a.png)
1.龟兔赛跑本题旨在可视化龟兔赛跑的过程。
比赛的跑道由周长为P面积为A的矩形构成。
每单位时间,乌龟沿跑道缓慢前进一步,而兔子信心满满,每次以一个固定的概率决定走或不走。
如果选择走,就从2-10步中等概率选择一个步长。
每个单位时间用一个循环表示。
赛跑从矩形跑道左上点(0,0)开始,并沿顺时针方向进行。
不管是乌龟或兔子,谁先到达终点,比赛就告结束。
要求:编写MATLAB程序可视化上述过程。
程序以P,A以及兔子每次休息或前进的概率为输入参量。
程序必须可视化每个时刻龟兔赛跑的进程,并以红色“*”表示乌龟,蓝色的“—”表示兔子。
测试时可取P=460,A=9000。
通过上述例子,可否从理论和实验角度估计兔子休息或前进的概率,是的兔子和乌龟在概率意义下打平手。
2.黄金分割Fibonacci数列F n通过如下递推格式定义F n=F n-1+F n-2,其中F0=F1=1要求:1.计算前51项Fibonacci数,并存入一个向量2.利用上述向量计算比值F n/F n-13.验证该比值收敛到黄金比例(1+5)/23.图像处理此题旨在熟悉图像处理的基本操作,请各位自己选择一张彩色图像pMATLAB以三维数组读取一张彩图。
该彩图上每个像素位置分别存放一个取值0-255的三维向量,其三个分量分别表示该点的红(R)绿(G)蓝(B)强度信息。
要求:编写MATLAB程序,读入原始彩色图像,并且在一个图形窗口界面下显示六张图像。
这六张图分别是原始RGB彩图,及其5各变形:RBG,BRG,BGR,GBR和GRB。
每张子图要求以其对应变形命名。
最后将图像以a.jpg形式保存并黏贴至报告中。
提示:imread, imshow, cat。
matlab综合大作业(附详细答案)
![matlab综合大作业(附详细答案)](https://img.taocdn.com/s3/m/5cefa356dd88d0d233d46ac2.png)
m a t l a b综合大作业(附详细答案)-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII《MATLAB语言及应用》期末大作业报告1.数组的创建和访问(20分,每小题2分):1)利用randn函数生成均值为1,方差为4的5*5矩阵A;实验程序:A=1+sqrt(4)*randn(5)实验结果:A =0.1349 3.3818 0.6266 1.2279 1.5888-2.3312 3.3783 2.4516 3.1335 -1.67241.2507 0.9247 -0.1766 1.11862.42861.5754 1.6546 5.3664 0.8087 4.2471-1.2929 1.3493 0.7272 -0.6647 -0.38362)将矩阵A按列拉长得到矩阵B;实验程序:B=A(:)实验结果:B =0.1349-2.33121.25071.5754-1.29293.38183.37830.92471.65461.34930.62662.4516-0.17665.36640.72721.22793.13351.11860.8087-0.66471.5888-1.67242.42864.2471-0.38363)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;实验程序:C=[A(2,2),A(2,4);A(3,2),A(3,4)]实验结果:C =3.3783 3.13350.9247 1.11864)寻找矩阵A中大于0的元素;]实验程序:G=A(find(A>0))实验结果:G =0.13491.25071.57543.38183.37830.92471.65461.34930.62662.45165.36640.72721.22793.13351.11860.80871.58882.42864.24715)求矩阵A的转置矩阵D;实验程序:D=A'实验结果:D =0.1349 -2.3312 1.2507 1.5754 -1.29293.3818 3.3783 0.9247 1.6546 1.34930.6266 2.4516 -0.1766 5.3664 0.72721.2279 3.1335 1.1186 0.8087 -0.66471.5888 -1.67242.4286 4.2471 -0.38366)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E;实验程序:E=flipud(fliplr(A))实验结果:E =-0.3836 -0.6647 0.7272 1.3493 -1.29294.2471 0.80875.3664 1.6546 1.57542.4286 1.1186 -0.1766 0.9247 1.2507-1.6724 3.1335 2.4516 3.3783 -2.33121.5888 1.2279 0.6266 3.3818 0.13497)删除矩阵A的第2列和第4列得到矩阵F;实验程序:F=A;F(:,[2,4])=[]实验结果:F =0.1349 0.6266 1.5888-2.3312 2.4516 -1.67241.2507 -0.17662.42861.5754 5.3664 4.2471-1.2929 0.7272 -0.38368)求矩阵A的特征值和特征向量;实验程序:[Av,Ad]=eig(A)实验结果:特征向量Av =-0.4777 0.1090 + 0.3829i 0.1090 - 0.3829i -0.7900 -0.2579 -0.5651 -0.5944 -0.5944 -0.3439 -0.1272-0.2862 0.2779 + 0.0196i 0.2779 - 0.0196i -0.0612 -0.5682 -0.6087 0.5042 - 0.2283i 0.5042 + 0.2283i 0.0343 0.6786 0.0080 -0.1028 + 0.3059i -0.1028 - 0.3059i 0.5026 0.3660 特征值Ad =6.0481 0 0 0 00 -0.2877 + 3.4850i 0 0 00 0 -0.2877 - 3.4850i 0 00 0 0 0.5915 00 0 0 0 -2.30249)求矩阵A的每一列的和值;实验程序:lieSUM=sum(A)实验结果:lieSUM =-0.6632 10.6888 8.9951 5.6240 6.208710)求矩阵A的每一列的平均值;实验程序:average=mean(A)实验结果:average =-0.1326 2.1378 1.7990 1.1248 1.24172.符号计算(10分,每小题5分):1)求方程组20,0++=++=关于,y z的解;uy vz w y z w实验程序:S = solve('u*y^2 + v*z+w=0', 'y+z+w=0','y,z');y= S. y, z=S. z实验结果:y =[ -1/2/u*(-2*u*w-v+(4*u*w*v+v^2-4*u*w)^(1/2))-w] [ -1/2/u*(-2*u*w-v-(4*u*w*v+v^2-4*u*w)^(1/2))-w] z =[ 1/2/u*(-2*u*w-v+(4*u*w*v+v^2-4*u*w)^(1/2))] [ 1/2/u*(-2*u*w-v-(4*u*w*v+v^2-4*u*w)^(1/2))]2)利用dsolve 求解偏微分方程,dx dyy x dt dt==-的解; 实验程序:[x,y]=dsolve('Dx=y','Dy=-x')实验结果:x =-C1*cos(t)+C2*sin(t)y = C1*sin(t)+C2*cos(t)3.数据和函数的可视化(20分,每小题5分):1)二维图形绘制:绘制方程2222125x y a a +=-表示的一组椭圆,其中0.5:0.5:4.5a =;实验程序:t=0:0.01*pi:2*pi; for a=0.5:0.5:4.5; x=a*cos(t); y=sqrt(25-a^2)*sin(t); plot(x,y) hold on end实验结果:2) 利用plotyy 指令在同一张图上绘制sin y x =和10x y =在[0,4]x ∈上的曲线;实验程序:x=0:0.1:4; y1=sin(x); y2=10.^x;[ax,h1,h2]=plotyy(x,y1,x,y2); set(h1,'LineStyle','.','color','r'); set(h2,'LineStyle','-','color','g'); legend([h1,h2],{'y=sinx';'y=10^x'});实验结果:3)用曲面图表示函数22z x y =+;实验程序:x=-3:0.1:3; y=-3:0.1:3; [X,Y]=meshgrid(x,y); Z=X.^2+Y.^2; surf(X,Y,Z)实验结果:4)用stem 函数绘制对函数cos 4y t π=的采样序列;实验程序:t=-8:0.1:8;y=cos(pi.*t/4); stem(y)实验结果:4. 设采样频率为Fs = 1000 Hz ,已知原始信号为)150π2sin(2)80π2sin(t t x ⨯+⨯=,由于某一原因,原始信号被白噪声污染,实际获得的信号为))((ˆt size randn x x+=,要求设计出一个FIR 滤波器恢复出原始信号。
大学专业试题-Matlab期末考试及答案
![大学专业试题-Matlab期末考试及答案](https://img.taocdn.com/s3/m/0f1e3a67a4e9856a561252d380eb6294dd882230.png)
大学专业试题-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')b二、选择题(一题3分,共15分)1、下列表示可以作为MATLAB的变量的是(D )A. abcd-2B. xyz_2#C. @hD. X_1_a2、如果x=1: 2 : 8,则U x(1)和x(4)分别是(B )A. 1, 8B. 1,7C. 2,8D. 2,73、指出下列错误的指令(B)。
A.symsa b;B. symsa, b;C.syms('a',’b');D. syms('a','b','positive');4、下列哪条指令是求矩阵的行列式的值(C)。
A .inv B. diag C. det D.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); fori=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的结果。
matlab期末大作业题目及答案
![matlab期末大作业题目及答案](https://img.taocdn.com/s3/m/992cd6445bcfa1c7aa00b52acfc789eb172d9ecf.png)
matlab 期末大作业(30分,每题6分)1. 积分运算(第四数值和五章符号)(1)定积分运算:分别采用数值法(quad ,dblquad )和符号运算(syms, int )一重定积分π⎰1. 数值法(quad )a) 运行代码:b) 运行结果:2. 符号运算(syms )a) 运行代码:b) 运行结果:二重定积分112200()x y dxdy+⎰⎰1.数值法(dblquad):a)运行代码:b)运行结果:2.符号运算(syms):a)运行代码:b)运行结果:(2) 不定积分运算sin dxdy ⎰⎰((x/a)+b/y) i.运行代码:ii.运行结果:2. 用符号法和数值法求解线性代数方程 (第五章和第二章)⎩⎨⎧=+=+12*22x *213*12x *a11y a a y a (1) 用syms 定义待解符号变量x,y 和符号参数a11,a12,a21,a22,用符号solve 求x,y 通解 1. 运行代码:2. 运行结果:(2) 用subs 带入a11=2,a12=4,a21=6,a22=8,求x 和y 特解,用vpa 输出有效数值4位的结果 1. 运行代码:2. 运行结果:(3) 采用左除(\)和逆乘法求解符号参数赋值后的方程 ⎩⎨⎧=+=+12*8x *63*4x *2y y1. 运行代码:2. 运行结果:3.数值法和符号法求解非线性方程组(第四数值和五章符号 )(1)采用数值法(fsolve )求解初始估计值为x0 = [-5; -5]的数值解1. 运行代码:2. 运行结果:21x 21x 21e x 2x e x x 2--=+-=-(2)符号法(solve )的符号结果用eval 或double 转化为数值结果.1. 运行代码:2. 运行结果:4. 解二阶微分方程 (第四数值和五章符号 )⎪⎩⎪⎨⎧===++6)0(',0)0(09322y y y dx dy dx y d(1)数值ode 求特解,用plot (x,y) 画t 在[0,10]范围内(x ,y )数值曲线 1. 运行代码:2. 运行结果:(2)符号运算dsolve求通解,用ezplot画t在[0,10]范围内(x,y)符号曲线1. 运行代码:2. 运行结果:5. 三维绘图(第六章)已知:x和y都在[-8,8]范围内,采用subplot(3,1,x)绘制三个子图,它们分别是用meshgrid和mesh绘制网格图、用c=contour 绘制等位线和用surf 绘制曲面图1.运行代码:2.运行结果:。
杭州电子科技大学matlab期末作业
![杭州电子科技大学matlab期末作业](https://img.taocdn.com/s3/m/f47f326858fafab069dc0262.png)
Matlab课程设计作业机械三班一、(1)建立数学模型>> num=[1];>> den=conv([0.2 1 0],[0.15 1]); >> G=tf(num,den)Transfer function:1-----------------------0.03 s^3 + 0.35 s^2 + s(2)根轨迹(3)K值的确定>> K=0:0.05:200;rlocus(G,K)[K,POLES]=rlocfind(G)selected_point =0.0059 + 5.7764iK =11.6902POLES =-11.67130.0023 + 5.7782i0.0023 - 5.7782i(4)超前校正>>sigma=0.2 ;zeta=((log(1/sigma))^2/((pi)^2+(log(1/sigma))^2))^(1/2); wn=3/zeta;p=[1 2*zeta*wn wn*wn];s=roots(p)>> s1=s(1);ng=1;dg=[0.03 0.35 1 0];ngv=polyval(ng,s1);dgv=polyval(dg,s1);g=ngv/dgv;theta=angle(g);phic=pi-theta;phi=angle(s1);thetaz=(phi+phic)/2;thetap=(phi-phic)/2;zc=real(s1)-imag(s1)/tan(thetaz);pc=real(s1)-imag(s1)/tan(thetap);nc=[1 -zc];dc=[1 -pc];Gc=tf(nc,dc)>> G=tf(ng,dg);rlocus(Gc*G)sgrid(0.4559,[])>> step(feedback(19.9*Gc*G,1))4)校正前后的simulink仿真模型1)校正前2)校正后(5)校正前单位响应曲线和单位脉冲曲线:>> num=[0 1];>> den=[0.03 0.35 1 0];>> G=tf(num,den);>> G0=feedback(G,1);>> step(G0)校正前单位响应>>impulse(G0)校正前单位脉冲响应校正后单位响应曲线和单位脉冲曲线:>> num=[19.9 57.6416];>> den=[0.03 0.809 6.355 15.3 0];>> G=tf(num,den);>> G0=feedback(G,1)>> step(G0)校正后单位响应>> impulse(G0) 校正后单位脉冲响应第二题:(1):>> num=10;den=[0.1 0.7 1 0];G=tf(num,den);nyquist(G)>>delta=11.1;s=tf('s');G=10/(s*(0.2*s+1)*(0.5*s+1)); margin(G)[gm,pm]=margin(G)phim1=50;phim=phim1-pm+delta;phim=phim*pi/180;alfa=(1+sin(phim))/(1-sin(phim))a=10*log10(alfa);[mag,phase,w]=bode(G);adB=20*log10(mag);wm=spline(adB,w,-a);t=1/(wm*sqrt(alfa));Gc=(1+alfa*t*s)/(1+t*s)/alfa;[gmc,pmc]=margin(G*Gc)figure;margin(G*Gc)前:后:、>> figure;step(feedback(G,1))>> figure;step(feedback(G*Gc,1))。
(完整word版)Matlab期末复习题(答案)
![(完整word版)Matlab期末复习题(答案)](https://img.taocdn.com/s3/m/05c3c00fb90d6c85ed3ac614.png)
一、 选择题(有10个题,共20分)1.有一个4×4矩阵A,表示取得矩阵A 的第一行和第二行的第二列至第四列所有元素的命令是( A )(A) A(1:2,2:4) (B) A(2:4,1:2) (C) A(1:2:4) (D) A(4:2:1)2.将一个图形窗口分成3×4个子区并表示第一个子区的命令是( C )A . subplot(12,1)B .subplot(1,12)C .subplot(3,4,1)D .subplot(1,3,4)3.利用Matlab 的符号计算功能计算微分方程初值问题⎪⎩⎪⎨⎧=+-=2)1(42y x x y dx dy 在区间 [1,2]上的解析解时所用到的函数是( D )(A) ode23 (B) ode45 (C) solve (D) dsolve4.以下有关Matlab 子函数的性质中不正确的是( D )(A) 子函数只能被处于同一个文件的主函数或其他子函数调用;(B) 在M 函数文件中,任何指令通过“名字”对函数进行调用时,子函数的优先级仅次于内装函数;(C) 在M 函数文件内,主函数的位置不可改变,但子函数的排列次序可以任意改变;(D) help, lookfor 等帮助指令都能提供关于子函数的任何帮助信息。
5.以下语句中生成按钮控件的语句是( B )(A) h_1=uimenu(gcf,'Label','&Blue');(B) h_1=uicontrol(gcf,'style','push', 'string','grid off','callback','grid off');(C) h_1=uicontrol(gcf,'style','text', 'horizontal','left','string',{'输入'});(D) h_1=axes('unit','normalized','position',[0,0,1,1],'visible','off');6.以下有关Matlab 函数及其句柄的说法中正确的是( A,C )(A) 在该函数的目录下可定义该函数的句柄,句柄定义后,可用feval 函数和句柄在任何目录下调用该函数;(B) 函数不在Matlab 的当前工作目录下不可执行,但可以用feval 函数和句柄调用该函数;(C) 函数不在Matlab 的当前工作目录下时,可以定义函数的句柄;(D) 函数不在Matlab 的当前工作目录下时,不可以定义函数的句柄。
matlab期末作业_附源代码
![matlab期末作业_附源代码](https://img.taocdn.com/s3/m/7ff3f5d36f1aff00bed51eec.png)
clc f=[-11,-9]'; A=[6,5;10,20]; B=[60,150]; Ae=[]; Be=[]; xm=[0,0]; xM=[8,Inf]; [x,f_opt]=linprog(f,A,B,Ae,Be,xm,xM)
6
③结果如下:
Optimization terminated. x= 8.0000 2.4000 f_opt = -109.6000
⑤结果分析: 生产甲800箱,生产乙240箱,获利最多为109.6万元。 显然应该是要改变生产计划的,改变计划获利增加。
7
②编写 m 文件
function y = myodefun(t,x ) y=[-x(1)^3-x(2);x(1)-x(2)^3]; end
0<t<30
③在 command 窗口中输入:
>> tspan=[0,30]; >> x0=[1;0.5]; >> [t,x]=ode45('myodefun',tspan,x0); >> plot(t,x(:,1),'g*',t,x(:,2),'b-.');
②Matlab源代码
clc f=[-10,-9]'; A=[6,5;10,20]; B=[60,150]; Ae=[]; Be=[]; xm=[0,0]; xM=[8,Inf]; [x,f_opt]=linprog(f,A,B,Ae,Be,xm,xM)
③结果如下:
Optimization terminated. x= 6.4286 4.2857 f_opt = -102.8571
1
1.求解微分方程组,画出解函数图。
MATLAB程序设计期末大作业
![MATLAB程序设计期末大作业](https://img.taocdn.com/s3/m/f5b97c1f52d380eb62946de5.png)
MATLAB程序设计期末大作业姓名:班级:学号:指导教师:题目1给定如图1所示的单位负反馈系统。
图1在系统中分别引入不同的非线性环节(饱和、死区、与滞环),观察系统的阶跃响应,并且分析比较不同的非线性环节对系统性能的影响。
解:1、利用MATLAB中的simulink工具箱,对题设控制系统进行建模,如图1 所示。
则没有任何非线性环节的系统,其阶跃响应曲线如图2 所示。
图22、在系统中加入饱和非线性环节,系统框图如图3所示。
其中,饱和非线性环节的输出上限为0.1,输出下限为-0.1;阶跃信号幅值为1。
图3利用simulink进行仿真,得到的阶跃响应曲线如图4所示。
图4为了比较当饱和非线性环节输出上下限变化时系统阶跃响应的不同,可以利用simulink中的to workspace模块,将多次仿真的结果记录到工作空间的不同数组中,并且绘制到同一幅图像上。
此时,系统框图如图5所示。
图5将4种情况下系统的阶跃响应曲线绘制在同一幅图像中,代码如下:>> plot(tout,out2);>> plot(tout,out2);>> hold on;>> grid on;>> gtext('0.1');>> plot(tout,out1);>> plot(tout,out3);>> gtext('0.2');>> plot(tout,out4);>> gtext('0.5');运行程序,结果如图6所示。
图6从图6中可以看出:当饱和非线性环节的输出范围较窄时,系统的阶跃响应速度较慢,上升时间长;同时,超调量较小,振荡不明显;随着输出范围的扩大,系统的响应速度加快,上升时间大大减小,同时伴有显著的振荡。
这是因为饱和环节会对信号起到限幅作用;不难想象,限制作用越强,系统的输出越不容易超调,响应也会越慢,这从图6也可以看出这一趋势。
matlab期末考试试题及答案
![matlab期末考试试题及答案](https://img.taocdn.com/s3/m/e137912cf342336c1eb91a37f111f18583d00c2e.png)
matlab期末考试试题及答案### MATLAB期末考试试题及答案#### 一、单选题(每题2分,共20分)1. MATLAB中,以下哪个函数用于计算矩阵的逆?A. invB. detC. eigD. rank答案:A2. MATLAB中,如何生成一个1到10的向量?A. `1:10`B. `1..10`C. `1..10`D. `1..10`答案:A3. MATLAB中,以下哪个命令用于绘制函数f(x)=x^2的图像?A. `plot(x, x^2)`B. `plot(x, f(x))`C. `fplot(x^2)`D. `fplot(x, x^2)`答案:A4. MATLAB中,如何计算矩阵A和B的点积?A. `dot(A, B)`B. `A * B`C. `A .* B`D. `A . B`答案:C5. MATLAB中,以下哪个函数用于求解线性方程组?A. `solve`B. `fsolve`C. `ode45`D. `fminsearch`答案:A#### 二、填空题(每题3分,共15分)1. MATLAB中,使用____函数可以计算矩阵的行列式。
答案:det2. 若向量`x = [1, 2, 3]`,则`x(2)`的值为____。
答案:23. MATLAB中,使用____函数可以创建一个3x3的单位矩阵。
答案:eye4. 若要在MATLAB中绘制函数f(x)=sin(x)的图像,可以使用____函数。
答案:plot5. MATLAB中,使用____函数可以计算矩阵的特征值。
答案:eig#### 三、编程题(每题10分,共30分)1. 编写一个MATLAB函数,计算并返回一个向量中所有元素的平方和。
```matlabfunction sum_of_squares = calculateSumOfSquares(vector)sum_of_squares = sum(vector.^2);end```2. 编写一个MATLAB脚本,使用while循环计算1到100之间所有奇数的和。
MATLAB期末大作业模版
![MATLAB期末大作业模版](https://img.taocdn.com/s3/m/803391f476eeaeaad1f330f0.png)
学号:《MATLAB》期末大作业学院土木工程与建筑学院专业班级姓名指导教师李琳2018年5月16日题目2:问题描述:在[0 2π]范围内绘制二维曲线图y=cos(5x)*sin(x)(1)问题分析这是一个二维绘图问题,先划定x的范围与间距,再列出y的表达式,利用plot函数绘制二维曲线。
(2)软件说明及源代码>> x = 0:pi/10:2*pi;>>y = cos(5*x).*sin(x);>>plot(x,y)(3)实验结果题目4:问题描述:创建符号函数并求解,要求写出步骤和运行结果(1)创建符号函数f=ax2+bx+c(2)求f=0的解(1)问题分析这是一个符号函数显示以及符号函数的求解问题,第一问先定义常量与变量,在写出f表达式,利用pretty函数显示f。
第二问利用solve函数求解f=0时的解。
(2)软件说明及源代码第一问>> syms a b c x;>> f=a*x^2+b*x+c;>> pretty(f)第二问>>syms a b c x;>>f=a*x^2+b*x+c;>> solve(f)(3)实验结果1、2、题目5:问题描述:求积分(1)问题分析这是一个利用符号函数求积分的问题,先定义变量x,再列出I1表达式,利用int函数求在范围0到Pi/2上的积分。
(2)软件说明及源代码>> syms x;>> I1=(1-2*sin(2*x))^0.5;>> int(I1,0,0.5*pi)(3)实验结果题目6:问题描述:分别随机产生一个6×6的整数矩阵(元素可在[-20,20]之间),求该随机阵的秩,特征值和特征向量。
(1)问题分析这是一个矩阵运算问题,先利用rand函数产生一个6*6的元素在-20到20之间的整形矩阵,再利用rank、eig两个函数分别求该随机阵的秩,特征值和特征向量。
期末matlab考试题及答案
![期末matlab考试题及答案](https://img.taocdn.com/s3/m/f7cf4e4c773231126edb6f1aff00bed5b9f37314.png)
期末matlab考试题及答案注意:以下内容为虚构的期末MATLAB考试题目及答案,并非真实情况。
一、选择题1. 在MATLAB中,以下哪个命令可以将矩阵A的第一列元素求和?A) sum(A(:,1))B) sum(A(1,:))C) sum(A(1))D) sum(A(:,1))答案:A) sum(A(:,1))2. 对于向量x = [1, 2, 3, 4],以下哪个命令可以将x的元素逆序排列?A) flip(x)B) reverse(x)C) sort(x,'descend')D) sort(x,'ascend')答案:A) flip(x)3. 如果一个函数文件的文件名为"myFunction.m",那么在MATLAB中如何调用该函数?A) myFunction.mB) call myFunctionC) run myFunctionD) myFunction答案:D) myFunction4. 在MATLAB中,以下哪个命令可以生成一个在-1到1范围内均匀分布的10个数的向量?A) linspace(-1, 1, 10)B) rand(1, 10)*2-1C) linspace(1, 10, -1)D) randi([-1, 1], 1, 10)答案:B) rand(1, 10)*2-15. 对于矩阵A和B,以下哪个命令可以将它们进行垂直方向的拼接?A) vertcat(A, B)B) concat(A, B, 'vertical')C) merge(A, B, 'vertical')D) [A; B]答案:D) [A; B]二、填空题1. 假设有一个向量x = [1, 2, 3, 4],使用MATLAB命令求x的最大值。
答案:max(x)2. 假设有一个矩阵A = [1, 2, 3; 4, 5, 6; 7, 8, 9],使用MATLAB命令求A的行数。
matlab期末试题库及答案
![matlab期末试题库及答案](https://img.taocdn.com/s3/m/b22e377242323968011ca300a6c30c225801f04d.png)
matlab期末试题库及答案一、选择题1. 下列关于MATLAB的说法中,错误的是:A. MATLAB是一种高级技术语言和环境B. MATLAB可以进行数值计算和数据可视化C. MATLAB支持矩阵运算和线性代数操作D. MATLAB无法处理大规模数据答案:D2. 在MATLAB中,下列哪个命令用于清除当前工作空间的变量:A. clearB. deleteC. closeD. refresh答案:A3. MATLAB中,用于创建行向量的命令是:A. rowvecB. linerowC. linspaceD. colon答案:D4. 在MATLAB中,如何计算数组a的平均值?A. mean(a)B. average(a)C. avg(a)D. meanval(a)答案:A5. 下列哪个命令用于将MATLAB中的向量a按从小到大排序?A. sort(a)B. order(a)C. arrange(a)D. rank(a)答案:A二、填空题1. MATLAB中表示pi的符号是______。
答案:pi2. MATLAB中用于计算2的10次方的命令是______。
答案:2^103. MATLAB中通过命令______可以生成从1到10的整数向量。
答案:1:104. MATLAB中用于求解线性方程组的命令是______。
答案:solve5. MATLAB中用于生成随机数的命令是______。
答案:rand三、计算题1. 计算下列矩阵的乘积:A = [1 2 3; 4 5 6; 7 8 9]B = [9 8 7; 6 5 4; 3 2 1]答案:C = A * B2. 解下列线性方程组:2x + y = 43x - y = 2答案:syms x yeq1 = 2*x + y == 4;eq2 = 3*x - y == 2;sol = solve([eq1, eq2], [x, y]);四、应用题题目:某电商公司的销售数据如下,请使用MATLAB进行分析和可视化。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 龟兔赛跑
本题旨在可视化龟兔赛跑的过程。
比赛的跑道由周长为P面积为A的矩形构成。
每单位时间,乌龟沿跑道缓慢前进一步,而兔子信心满满,每次以一个固定的概率决定走或不走。
如果选择走,就从2-10步中等概率选择一个步长。
每个单位时间用一个循环表示。
赛跑从矩形跑道左上点(0,0)开始,并沿顺时针方向进行。
不管是乌龟或兔子,谁先到达终点,比赛就告结束。
要求:
编写MATLAB程序可视化上述过程。
程序以P,A以及兔子每次休息或前进的概率为输入参量。
程序必须可视化每个时刻龟兔赛跑的进程,并以红色“*”表示乌龟,蓝色的“—”表示兔子。
测试时可取P=460,
A=9000。
通过上述例子,可否从理论和实验角度估计兔子休息或前进的概率,是的兔子和乌龟在概率意义下打平手。
2. 黄金分割
Fibonacci数列F n通过如下递推格式定义
F n=F n-1+F n-2,其中F0=F1=1
要求:
1. 计算前51项Fibonacci数,并存入一个向量
2. 利用上述向量计算比值F n/F n-1
3. 验证该比值收敛到黄金比例
3. 图像处理
此题旨在熟悉图像处理的基本操作,请各位自己选择一张彩色图像p MATLAB以三维数组读取一张彩图。
该彩图上每个像素位置分别存放一个取值0-255的三维向量,其三个分量分别表示该点的红(R)绿(G)蓝(B)强度信息。
要求:
编写MATLAB程序,读入原始彩色图像,并且在一个图形窗口界面下显示六张图像。
这六张图分别是原始RGB彩图,及其5各变形:RBG,BRG,BGR,GBR和GRB。
每张子图要求以其对应变形命名。
最后将图像以a.jpg形式保存并黏贴至报告中。
提示:
imread, imshow, cat。