2014 第一轮上机练习题答案matlab程序设计练习解析

合集下载

matlab上机习题详细讲解-试题答案解析

matlab上机习题详细讲解-试题答案解析

学习指导参考P 第一次实验答案1. 设要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。

clc clearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3) y1=diff(y) subplot(2,1,1) plot(x,y)subplot(2,1,2) plot(x(1:150),y1)2绘制极坐标系下曲线(a,b,n 自定数据)clc clear a=10; b=pi/2; n=5;theta=0:pi/100:2*pi; rho=a*cos(b+n*theta); polar(theta,rho)3. 列出求下列空间曲面交线的程序clc clearx=[-5:0.5:5];[X,Y]=meshgrid(x); z1=X.^2-2*Y.^2;z2=X.*2-Y.*3; xlabel('x') ylabel('y') zlabel('z') surf(X,Y,z1) hold onsurf(X,Y,z2)k=find(abs(z1-z2)<0.5); x1=X(k) y1=Y(k)z3=x1.^2-2*y1.^2 hold onplot3(x1,y1,z3,'*')4、设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y 把x=0~2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线,要求有图形标注。

clc clearx=-2*pi:0.1: 2*pi;y=cos(x).*(0.5+sin(x)*3./(1+x.^2)); plot(x,y,'b*-'); title('绘图'); xlabel('x 坐标'); ylabel('y 坐标'); legend('原函数')gtext('y=cos(x)(0.5+3*sin(x)/(1+x^2))')5、求下列联立方程的解 81025695832475412743-=+-+-=-+-=++-=--+w z y x w z x w z y x w z y xclc cleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10]; b=[4,-3,9,-8]; c=b/a; x=c(1,1) y=c(1,2) z=c(1,3) w=c(1,4)6. 假设一曲线数据点为x = 0:2:4*pi;y = sin(x).*exp(-x/5);试将x 的间距调成 0.1,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。

MATLAB教程 R2014a 答案 全 张志涌-matlab2014答案

MATLAB教程 R2014a 答案 全 张志涌-matlab2014答案

目录第一章 (1)第二章 (5)第三章 (12)第四章 (32)第五章 (47)第六章 (54)补充题欧拉法,龙格库塔法解方程,黑板上的题 (57)第一章1.创建表达式%可以用syms先符号运算再带入值x=1;y=2;z=(sqrt(4*x^2+1)+0.5457*exp(-0.75*x^2-3.75*y^2-1.5*x))/(2*sin(3*y)-1)z =-1.43452.计算复数x=(-1+sqrt(-5))/4;y=x+8+10jy =7.7500 +10.5590i3.help命令学三维曲线x=-5:0.1:5;y=x;[X,Y]=meshgrid(x,y);Z=(sin(sqrt(X.^2+Y.^2)))./(sqrt(X.^2+Y.^2));subplot(221);surf(X,Y,Z);colormap(cool);subplot(222);plot3(X,Y,Z,'linewidth',4); %绘制三维曲线,也可以随意给定一个三维曲线的函数。

如果画这个曲面,那么将绘出一族三维曲线grid on;subplot(223);meshz(X,Y,Z); %地毯绘图subplot(224);meshc(X,Y,Z); %等高线绘图4.peaks等高线(更改原函数)subplot(221);contour(peaks1,20);subplot(222);contour3(peaks1,10); %可以定义等高线条数subplot(223);contourf(peaks1,10);subplot(224);peaks1;z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...- 1/3*exp(-(x+1).^2 - y.^2)5. LOGO绘制membranelogo第一章书后习题1.合法性不合法合法不合法不合法合法2.运行命令及探讨a=sqrt(2)a =1.4142。

MATLAB 上机 习题及答案

MATLAB 上机 习题及答案

15、今有多项式P1(x)=x4-2x+1,P2(x)=x2+4x-0.5,要求先求得P(x)=P1(x)+P2(x),然后计算xi=0.2*i各点上的P(xi)(i=0,1,2,…,5)值。

p1=[1.0 0.0 0.0 -2.0 1.0];>> p2=[0.0 0.0 1.0 4.0 -0.5];>> p1x=poly2sym(p1);p2x=poly2sym(p2);>> p=p1x+p2xp =x^4+2*x+1/2+x^2>> x=0:5;>> x.^4+2*x+1/2+x.^2ans =0.5000 4.5000 24.5000 96.5000 280.5000 660.50001、试个MATLAB的工作空间中建立以下2个矩阵:A=[1 2]1234B⎡⎤=⎢⎥⎣⎦,求出矩阵A和B的乘积,并将结果赋给变量C。

>> A=[1 2]A =1 2>> B=[1 23 4]B =1 23 4>> C=A*BC =7 102、利用MATLAB提供的帮助信息,了解inv命令的调用格式,并作简要说明。

help invINV Matrix inverse.INV(X) is the inverse of the square matrix X.A warning message is printed if X is badly scaled ornearly singular.See also SLASH, PINV, COND, CONDEST, LSQNONNEG, LSCOV. Overloaded methodshelp gf/inv.mhelp zpk/inv.mhelp tf/inv.mhelp ss/inv.mhelp lti/inv.mhelp frd/inv.mhelp sym/inv.mhelp idmodel/inv.m3、使用help命令查询函数plot的功能以及调用方法,然后利用plot命令绘制函数y=sin(x)的图形,其中0xπ≤≤。

matlab上机习详解_试题答案

matlab上机习详解_试题答案

P 第一次实验答案1. 设要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。

clc clearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3)y1=diff(y) subplot(2,1,1) plot(x,y)subplot(2,1,2) plot(x(1:150),y1)2绘制极坐标系下曲线(a,b,n 自定数据)clc clear a=10; b=pi/2; n=5;theta=0:pi/100:2*pi; rho=a*cos(b+n*theta); polar(theta,rho)3. 列出求下列空间曲面交线的程序clc clearx=[-5:0.5:5];[X,Y]=meshgrid(x); z1=X.^2-2*Y.^2;z2=X.*2-Y.*3; xlabel('x') ylabel('y') zlabel('z') surf(X,Y,z1) hold onsurf(X,Y,z2)k=find(abs(z1-z2)<0.5); x1=X(k) y1=Y(k)z3=x1.^2-2*y1.^2 hold onplot3(x1,y1,z3,'*')4、设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y 把x=0~2π间分为101点,画出以x 为横坐标,y为纵坐标的曲线,要求有图形标注。

clc clearx=-2*pi:0.1: 2*pi;y=cos(x).*(0.5+sin(x)*3./(1+x.^2)); plot(x,y,'b*-'); title('绘图'); xlabel('x 坐标'); ylabel('y 坐标'); legend('原函数')gtext('y=cos(x)(0.5+3*sin(x)/(1+x^2))')5、求下列联立方程的解 81025695832475412743-=+-+-=-+-=++-=--+w z y x w z x w z y x w z y xclc cleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];b=[4,-3,9,-8]; c=b/a; x=c(1,1) y=c(1,2) z=c(1,3) w=c(1,4)6. 假设一曲线数据点为x = 0:2:4*pi;y = sin(x).*exp(-x/5);试将x 的间距调成 0.1,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。

Matlab上机练习题及答案

Matlab上机练习题及答案

Matlab 上机练习题及答案---------------------------------------------------------------------1、矩阵Y=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3472123100451150425,给出元素1的全下标和单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。

取出子矩阵⎥⎦⎤⎢⎣⎡21301,并求该矩阵的维数。

解:命令为:Y=[5,2,4;0,15,1;45,100,23;21,47,3]Y(2,3)Y(10)sub2ind([43],2,3)[i,j]=ind2sub([43],10)find(Y==100)sub2ind([43],3,2)B=Y(2:2:4,3:-2:1)或B=Y([24],[31])[m n]=size(Y)---------------------------------------------------------------------2、已知矩阵A=[10-1;241;-205],B=[0-10;213;112]求2A+B 、A 2-3B 、A*B 、B*A 、A.*B ,A/B 、A\B 解:命令为:A=[10-1;241;-205]B=[0-10;213;112]E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B---------------------------------------------------------------------3、利用函数产生3*4阶单位矩阵和全部元素都为8的4*4阶矩阵,并计算两者的乘积。

解:命令为:A=eye(3,4)B=8*ones(4)C=A*B---------------------------------------------------------------------4、创建矩阵a=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡------7023021.5003.120498601,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b构成矩阵d ,计算a*b 、c<d ,c&d,c|d ,~c|~d 解:命令为:a=[-1,0,-6,8;-9,4,0,12.3;0,0,5.1,-2;0,-23,0,-7]b=a(:,[12])c=a([12],:)d=b’e=a*b f=c<d g=c&d h=c|d i=~c|~d---------------------------------------------------------------------5、求!201∑=n n 解:命令文件为sum=0;s=1;for n=1:20s=n*s;sum=sum+s;end sum---------------------------------------------------------------------6、求a aa aaa aa a S n ++++=得值,其中a 是一个数字,由键盘输入,表达式中位数最多项a 的个数,也由键盘输入。

Matlab上机实验答案.docx

Matlab上机实验答案.docx

实验一MATLAB 运算基础Matlab 上机实验答案1. 先求下列表达式的值,然后显示MATLAB X 作空间的使用情况并保存全部变量。

» z1 =2*sin(85*pi/180)/(1 +exp(2)) z1 =0.2375⑵ z? =*ln(x +Jl + x?),其中 「45 » x=[2 1+2i;・0.45 5];» z2=1/2*log(x+sqrt(1 +x A2)) z2 =0.7114 ・ 0.0253i 0.8968 + 0.3658i 0.2139+ 0.9343i1.1541 ・0.0044ie 0.3asin(a+0.3) + ln^^a = —3Q — 29 2.9,3.0(1)2sin85°» a=-3.0:0.1:3.0;» z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)(» z33=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2)可以验证z3==z33,是否都为1)z3 =Columns 1 through 50.7388 + 3.1416i 0.7696 + 3.1416i 0.7871 + 3.1416i 0.7913 + 3.1416i 0.7822 + 3.1416iColumns 6 through 100.7602 + 3.1416i 0.7254 + 3.1416i 0.6784 + 3.1416i 0.6196 + 3.1416i 0.5496 + 3.1416iColumns 11 through 150.4688 + 3.1416i 0.3780 + 3.1416i 0.2775 + 3.1416iColumns 16 through 20-0.0771 + 3.1416i -0.2124 + 3.1416i -0.3566 + 3.1416i -0.5104 + 3.1416i -0.6752 + 3.1416iColumns 21 through 25-0.8536 + 3.1416i -1.0497 + 3.1416i -1.2701 + 3.1416i -1.5271+3.1416i -1.8436 + 3.1416iColumns 26 through 30-2.2727 + 3.1416i -2.9837 + 3.1416i -37.0245 + O.OOOOi-3.0017 + O.OOOOi -2.3085 + O.OOOOiColumns 31 through 35-1.8971 + O.OOOOi -1.5978 + O.OOOOi -1.3575 + O.OOOOi -1.1531 + O.OOOOi -0.9723 + O.OOOOiColumns 36 through 400.4841 + O.OOOOi0.6474 + O.OOOOi0.6119 + O.OOOOi 0.5777 + O.OOOOi 0.5327 + O.OOOOi-0.8083 + O.OOOOi -0.6567 + O.OOOOi -0.5151 + O.OOOOi-0.3819 + O.OOOOi -0.2561 + O.OOOOiColumns 41 through 45-0.1374 + O.OOOOi -0.0255 + O.OOOOi 0.0792 + O.OOOOi0.1766 + O.OOOOi 0.2663 + O.OOOOiColumns 46 through 500.3478 + O.OOOOi 0.4206 + O.OOOOi0.5379 + O.OOOOi 0.5815 + O.OOOOiColumns 51 through 550.6145 + O.OOOOi 0.6366 + O.OOOOi0.6470 + O.OOOOi 0.6351 + O.OOOOiColumns 56 through 600.4774 + O.OOOOi 0.4126 + O.OOOOiColumn 610.3388 + O.OOOOir 0<r<l(4) z4=< t2 -1 l<t<2 9其中Z=0:0・5:2・ 5尸—2r + l 2<r<3»t=0:0.5:2.5;»z4=(t>=0&t<1 ).*(t.A2)+(t>=1 &t<2).*(t.A2-1 )+(t>=2&t<3).*(t.A2-2.*t+1)z4 =0 0.2500 0 1.2500 1.0000 2.25002.已知:求下列表达式的值:(1) A+6*B和A・B+I (其中I为单位矩阵)(2) A*B 和 A.*B⑶A八3和A/3⑷A/B及B\A(5)[A,B]和[A([1,3],:);B^2]» A=[12 34 -4;34 7 87;3 65 7];» B=[1 3-1;2 0 3;3 -2 7];» A+6*Bans =» A.*Bans =12 102 468 0 2619 ・130 49» A A3 ans =37226 23382424737078688 45414214918848604600766118820»A.A3ans =» B\A ans =ans =12 3 4 11 2067.0000-134.0000 68.00003.设有矩阵A和B(1) 求它们的乘积C。

Matlab上机练习一答案

Matlab上机练习一答案

Matlab上机练习⼀答案Matlab 上机练习⼀班级学号姓名按要求完成题⽬,并写下指令和运⾏结果。

(不需要画图)1、求下列联⽴⽅程的解=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\bc =5.22264.45701.47181.59942、设 ??++=)1(sin 35.0cos 2x x x y ,把x=0-2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。

>> x=linspace(0,2*pi,101);>> y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>> plot(x,y,'r')3、产⽣8×6阶的正态分布随机数矩阵R1, 求其各列的平均值、和、乘积。

并求该矩阵全体数的平均值。

(mean var )a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)或者u=reshape(a,1,48);p1=mean(u)p2=var(u)4、绘制)(222y x e x z +-=在定义域x=[-2,2],y=[-2,2]内的曲⾯。

(利⽤meshgrid )x=-2:2;y=x;[X,Y]= meshgrid(x,y);Z=X^2*exp(-(X^2+Y^2));mesh(X,Y,Z)5、求代数⽅程3x 5+4x 4+7x 3+2x 2+9x+12=0的所有根。

(利⽤roots 函数)p=[3 4 7 2 9 12];roots(p)6、把1开五次⽅,并求其全部五个根。

MATLAB上机练习一参考解答

MATLAB上机练习一参考解答

上机练习一参考解答一、实验目的1、 熟悉Matlab 编程2、 体会数学上恒等,算法上不一定恒等二、实验内容1. Using the Taylor polynomial of degree nine and three-digit rounding arithmetic to find an approximationto 5-e by each of the following methods.(A) ∑=--≈905!)5(n n n e , (B) ∑=-≈=9055!5/11n nn e e An approximate value of 5-e correct to three digits is 31074.6-⨯. Which formula, (A) or (B), gives the most accuracy, and why?1) 算法基础利用x e 的Taylor 公式00!!n nk x n n x x e n n ∞===≈∑∑,x -∞<<+∞ (1)及001/1/1/!!n nk x x n n x x e e n n ∞-====≈∑∑,x -∞<<+∞, (2)其中k 是根据精度要求给定的一个参数。

在本题中将k 取为9, x 取为-5或5即可由公式(1)或(2)得到5-e 的近似计算方法(A )或(B )。

2) 程序下述程序用公式(A )及(B )分别在Matlab 许可精度下及限定在字长为3的算术运算情况下给出5-e的近似计算结果,其中results_1, results_2为用方法(A )在上述两种情况下的计算结果,err_1, err_2为相应的绝对误差;类似的,results_3, results_4为用方法(B )在上述两种情况下的计算结果,err_3, err_4为相应的绝对误差;具体程序如下:% Numerical Experiment 1.1 % by Xu Minghua, May 17, 2008 clc; %Initialize the data x=-5; k=9; m=3; %three-digit rounding arithmetic %------------------------------------ % Compute exp(x) by using Method (A) % with the computer precision results_1=1; power_x=1; for i=1:k factor_x=x/i; power_x=power_x*factor_x; results_1=results_1+power_x; end results_1 err_1=abs(exp(x)-results_1)%------------------------------------% Compute exp(x) by using Method (A) % with the 3-digits precisionresults_2=1;power_x=1;for i=1:kfactor_x=digit(x/i,m);power_x=digit(power_x*factor_x,m); results_2=digit(results_2+power_x,m); endresults_2err_2=abs(exp(x)-results_2)%------------------------------------% Compute exp(x) by using Method (B) % with the computer precisiont=-x;results_3=1;power_x=1;for i=1:kfactor_x=t/i;power_x=power_x*factor_x;results_3=results_3+power_x; endresults_3=1/results_3err_3=abs(exp(x)-results_3)%------------------------------------% Compute exp(x) by using Method (B) % with the 3-digits precisiont=-x; results_4=1;power_x=1;for i=1:kfactor_x=digit(t/i,m);power_x=digit(power_x*factor_x,m);results_4=digit(results_4+power_x,m); endresults_4=digit(1/results_4,m)err_4=abs(exp(x)-results_4)%------------------------------------上述主程序用到一个子程序digit.m, digit(x,m)的作用是将x四舍五入成m位数。

云南小学2014年初1第32单元第30节12课_Matlab考试题库附加答案

云南小学2014年初1第32单元第30节12课_Matlab考试题库附加答案

Matab考试题库附加答案一、辨析题(共2小题,每题 5 分,共计 10 分)二、问答题(共3小题,每题 5 分,共计 15 分)三、计算题(共7小题,每题 5 分,共计 35 分)四、编程题(共4小题,每题 10 分,共计 40 分)填空题(计算部分)1、标点符号; _______可以使命令行不显示运算结果,%——用来表示该行为注释行。

2、x为0~4pi,步长为0.1pi的向量,使用命令_______创建。

x=0:0.1*pi:4*pi3、输入矩阵A=,使用全下标方式用A(2,2) 取出元素“-5”,使用单下标方式用_______取出元素“-5”。

A(5)4、符号表达式sin(2*a+t)+m中独立的符号变量为_______。

t5、M脚本文件和M函数文件的主要区别是M脚本文件没有函数定义和M函数文件有函数定义_______。

6. 设x是一维数组,x的倒数第3个元素表示为_______;设y为二维数组,要删除y的第34行和48列,可使用命令_______; _______;x(_end-2_)y(34,:)=[]y(:,48)=[]7. 将变量x以Ascii文本格式存储到文件fname.txt,应使用命令_________ _;save _x8. 在while 表达式, 语句体, End 循环语句中,表达式的值__ __时表示循环条件为真,语句体将被执行,否则跳出该循环语句;非零9.要从键盘读入一个字符串并赋值给变量x,且给出提示“Who is she?”,应使用命令_________;x=input(‘Who is she?’,’s’)_10.设A=和B=和C=均为m*n矩阵,且存在于WorkSpace 中,要产生矩阵D=,可用命令________ _,计算可用命令________;D=(A-C)/B.^Cdet(inv(A’*B)11. 在MATLAB命令窗口中的“>>”标志为MATLAB的_______提示符,“│”标志为_______提示符。

MATLAB上机实验1答案

MATLAB上机实验1答案

MATLAB上机实验1答案实验1 Matlab 初步一、问题已知矩阵A 、B 、b 如下:-------------=031948118763812654286174116470561091143A------=503642237253619129113281510551201187851697236421B []1187531=b应用Matlab 软件进行矩阵输入及各种基本运算。

二、实验目的学会使用Matlab 软件构作已知矩阵对应的行(列)向量组、子矩阵及扩展矩阵,实施矩阵的初等变换及线性无关向量组的正交规范化,确定线性相关相关向量组的一个极大线性无关向量组,且将其余向量用极大线性无关向量组线性表示,并能编辑M 文件来完成所有的实验目的。

三、预备知识1、线性代数中的矩阵及其初等变换、向量组的线性相关性等知识。

2、 Matlab 软件的相关命令提示如下;(1)选择A 的第i 行做一个行向量:ai=A(i,:);(2)选择A 的第j 行做一个列向量:ai=A(j,:);(3)选择A 的某几行、某几列上的交叉元素做A 的子矩阵:A([行号],[列号]);(4) n 阶单位阵:eye(n);n 阶零矩阵:zeros(n);(5)做一个n 维以0或1为元素的索引向量L ,然后取A(:,L),L 中值为1的对应的列将被取到。

(6)将非奇异矩阵A 正交规范化,orth(A) ;验证矩阵A 是否为正交阵,只需做A*A'看是否得到单位阵E 。

(7)两个行向量a1和a2的内积:a1*a2'。

(8)让A 的第i 行与第j 列互换可用赋值语句:A([i,j],:)=A([j,i],:);(9)让K乘以A的第i行可用赋值语句:A(i,:)=K*A(i,:);(10)让A的第i行加上第j行的K倍可用赋值语句:A(i,:)=A(i,:)+K*A(j,:);(11)求列向量组的A的一个极大线性无关向量组可用命令:rref(A)将A化成阶梯形行的最简形式,其中单位向量对应的列向量即为极大线性无关向量组所含的向量,其它列向量的坐标即为其对应向量用极大线性无关组线性表示的系数。

Matlab上机题库及详细答案

Matlab上机题库及详细答案
例17:输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出。
解: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')));
(2)均值为0.6方差为0.1的5阶正态分布随机矩阵
解:>>x=20+(50-20)*rand(5);
>>y=0.6+sqrt(0.1)*randn(5)
例13:将101~125等25个数填入一个5行5列的表格中,使其每行每列及对角线的和均为565。
解:M=100+magic(5)
M =117 124 101 108 115
-0.4606
0.3848
例2、用简短命令计算并绘制在0x6范围内的sin(2x)、sinx2、sin2x。
解:x=linspace(0,6)
y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;
plot(x,y1,x, y2,x, y3)
例3:画出指数衰减曲线y1=exp(-t/3)*sin(3*t)和它的包络y2=exp(-t/3),t的取值范围是(0,4pi)。

matlab上机考试题及答案

matlab上机考试题及答案

matlab上机考试题及答案1. 题目:编写一个MATLAB函数,计算并返回一个向量中所有元素的平方和。

答案:函数定义如下:```matlabfunction sumOfSquares = calculateSumOfSquares(vector)sumOfSquares = sum(vector.^2);end```2. 题目:使用MATLAB的内置函数,找出一个矩阵中的最大元素及其位置。

答案:可以使用`max`函数来找出矩阵中的最大元素,同时使用`find`函数来获取其位置。

示例代码如下:```matlabA = [1, 2, 3; 4, 5, 6; 7, 8, 9];[maxValue, linearIndex] = max(A(:));[row, col] = ind2sub(size(A), linearIndex);```3. 题目:给定一个向量,使用MATLAB编写代码,实现向量元素的逆序排列。

答案:可以使用`flip`函数来实现向量的逆序排列。

示例代码如下:```matlabvector = [1, 2, 3, 4, 5];reversedVector = flip(vector);```4. 题目:编写一个MATLAB脚本,计算并绘制一个正弦波的图像。

答案:可以使用`sin`函数生成正弦波数据,并使用`plot`函数绘制图像。

示例代码如下:```matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);xlabel('x');ylabel('sin(x)');title('Sine Wave');```5. 题目:给定一个3x3的矩阵,使用MATLAB编写代码,计算其行列式。

答案:可以使用`det`函数来计算矩阵的行列式。

示例代码如下:```matlabmatrix = [1, 2, 3; 4, 5, 6; 7, 8, 9];determinant = det(matrix);```结束语:以上是MATLAB上机考试的题目及答案,希望能够帮助大家更好地掌握MATLAB的编程技巧和函数使用。

MATLAB上机习题一 解答

MATLAB上机习题一 解答

9. 判断下面语句的运算结果,并与 MATLAB 计算结果做比较: 1) 4 < 20 2) 4 ≤ 20 3) 4 == 20 4) 4 ~ = 20 5) ' b ' < ' B ' 解答: 1)true 2)true 3)false 4)true 5)false
注意,字符比较实际上比较的是字符的 ASCII 码的大小。
提示,可以使用 isvarname 对上述变量名进行检验。
解答:1、2、5、6、9、10 是合法的,其它不能作为变量名。 注意,第 6 问的函写脚本程序,命名为 barbell.m,完成如下计算: 如图 1 所示的杠铃,
每个球的半径是 10cm,两个求直接链接杆的长度是 15cm,杆的直径为 1cm,计 算杠铃的体积和表面积;使用 disp 函数显示计算结果。 (提示:disp 函数的用法 参考教材的例 2-31, 面积计算时相交部分球冠可近似为圆, 体积计算时可忽略重 叠的球冠体积) 解答: barbell.m(拷贝文件内容到如下方框中) : %注意,将圆柱与球相交部分面积近似为圆形 clear all clc R=10; %球半径,单位cm l=15; %杆长度,单位cm d=1; %杆直径,单位为cm
n2a + p nRT (V − nb ) = V2
该方程新增了 a 和 b 两个变量,用来表示纯净气体的属性。 1)编写脚本程序,命名为 state_equation.m,利用如下数据: 压强,p 摩尔数,n 体积,V a b 理想气体常数,R 220 mbar 2 mol 1L 5.536 L2bar/mol2 0.03049 L/mol 8.314 J/(mol.K)
1. 运行 MATLAB 软件,拖放、关闭界面上的子窗口,并恢复到原始视图。 解答:略。注意采用下图方式恢复视图

北航MATLAB2014年试题及答案

北航MATLAB2014年试题及答案

北航2014年小学期Matlab试题一、填空1.计算机仿真的三个基本要素系统、模型、计算机模型的建立、系统的组装、仿真实验。

2.工作空间窗口的作用工作空间窗口将显示目前内存中所有的MATLAB变量的变量名、变量值、字节数以及类型等信息,不同的变量分别对应不同的变量名图标。

3.ans的意义Ans是MATLAB默认的变量如果用户未定义变量名,系统用于计算结果存储的默认变量名4.三类基本运算是?算术运算关系运算逻辑运算5.异或的表示xor6.数值运算以________为对象进行分析7.meshgrid函数用于?绘制三维曲面8.sym和syms的最大不同点 syms可以一次定义多个符号变量9.callbacks函数中hObject和handles的关系调函数的输入参数:hObject、eventdata和handles。

hObject为当前回调函数对应的GUI对象的句柄,eventdata为未定义的保留参数,handles为当前GUI所有数据的结构体,包含所有GUI对象的句柄和用户定义的数据。

二、简答1.a\b和b/a等价运算2.使用数值运算和符号运算的不同之处数值运算在运算前必须先对变量赋值,再参加运算。

符号运算不需要对变量赋值就可运算,运算结果以标准的符号形式表达。

符号运算不是基于矩阵的数值分析,而是使用符号对象或者字符串来进行分析和计算,其结果是符号函数或者解析形式。

3.使用M文件编写函数的基本格式function [输出形参列表]=函数名(输入形参列表)注释说明语句段程序语句段(1)第一行帮助行,即H1行以(%)开头,作为lookfor指令搜索的行(2)函数体说明及有关注解以(%)开头,用以说明函数的作用及有关内容。

函数体语句4.GUI中M文件包含的主要函数和作用GUIDE创建的GUI的M文件,由一系列子函数构成,包含主函数、Opening函数、Output函数和回调函数。

第一行为主函数声明,必须指定主函数名,且与文件名相同;varargin为输入参数,varargout为输出参数。

matlab 习题及答案1

matlab 习题及答案1

第一次上机作业1.设A和B是两个同维同大小的矩阵,问:1)A*B和A.*B的值是否相等?不相等2)A./B和B.\A的值是否相等?相等3)A/B和B\A的值是否相等?不相等4)A/B和B\A所代表的数学含义是什么?A\B等效于A的逆左乘B矩阵,也就是inv(A)*B,而B/A等效于A矩阵的逆右乘B矩阵,也就是B*inv(A)。

2.写出完成下列操作的命令:1)将矩阵A的第2~5行中的第1,3,5列元素赋给矩阵BB=A(:,1:3:5)2)删除矩阵A的第7号元素A(7)=[]3)将矩阵A的每个元素值加30A=A+304)求矩阵A的大小和维数whos和size(A)5)将含有12个元素的向量x转换成3×4矩阵y=reshape(x,3,4)3.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9; B=10-A;L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);L1 = 0 0 0 0 1 0 0 0 0 L2 = 1 1 1 1 1 0 0 0 0 L3 =0 0 0 1 1 1 0 0 0 L4 = 4 5 6 4.已知:A=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---14.35454.9632053256545410778.01023完成下列操作:(1)取出A 的前3行构成矩阵B ,前两列构成矩阵C ,右下角3×2子矩阵构成矩阵D ,B 与C 的乘积构成矩阵E 。

B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C(2)分别求E<D 、E&D 、E|D 、~E|~D 和find(A>=10&A<25)。

1)E<D 结果 0 1 0 0 0 1 2)E&D 结果 1 1 0 1 1 1 3)E|D 结果 1 1 1 1 1 1 4) ~E|~D 结果 0 0 1 0 0 05)find(A>=10&A<25)结果155.当A=[34, NaN, Inf,-Inf,-pi,eps,0]时,分析下列函数的执行结果:all(A), any(A), innan(A), isinf(A), isfinite(A)(1)all(A)=0,矩阵A不是所有的元素都非零。

(完整版)matlab上机练习题答案

(完整版)matlab上机练习题答案

(完整版)matlab 上机练习题答案1.计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积>〉 a=[6 9 3;2 7 5]; 〉〉 b=[2 4 1;4 6 8]; 〉〉 a 。

*b ans =12 36 3 8 42 402。

对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

〉〉 A=[4 9 2;7 6 4;3 5 7]; 〉> B=[37 26 28]’; >〉 X=A\B X = -0.5118 4.0427 1.33183。

⎥⎦⎤⎢⎣⎡-=463521a ,⎥⎦⎤⎢⎣⎡-=263478b ,观察a 与b 之间的六种关系运算的结果 >〉 a=[1 2 3;4 5 6]; 〉> b=[8 –7 4;3 6 2]; >〉 a 〉b ans =0 1 0 1 0 1 〉> a 〉=b ans =0 1 0 1 0 1 >> a 〈b ans =1 0 1 0 1 0 〉> a<=b ans =1 0 1 0 1 0 >〉 a==b ans =0 0 0 0 0 0 〉〉 a~=b ans =1 1 1 1 1 14计算多项式乘法(x 2+2x +2)(x 2+5x +4)>> c=conv ([1 2 2],[1 5 4]) c =1 7 16 18 8 5计算多项式除法(3x 3+13x 2+6x +8)/(x +4) 〉〉 d=deconv ([3 13 6 8],[1 4]) d =3 1 26求欠定方程组⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解〉〉 a=[2 4 7 4;9 3 5 6]; 〉> b=[8 5]’; 〉> x=pinv (a )*b x =—0.2151 0.4459 0。

2014级《MATLAB上机》

2014级《MATLAB上机》

2014级《MATLAB 上机》A1、设1,1ty t eππ-=-≤≤+,在同一图形窗口采用子图的形式绘制不同图形:条形图、阶梯图、杆图和全对数坐标图。

2、数值与符号计算(1)求极限limxxx e a be →+∞+ (2)求不定积分ax xe dx ⎰(3)已知线性方程组Ax=b ,其中2111210,12101210120A b -⎛⎫⎛⎫⎪ ⎪-- ⎪⎪ ⎪ ⎪==-- ⎪⎪-- ⎪⎪ ⎪ ⎪-⎝⎭⎝⎭,运用稀疏存储矩阵的方式求其解。

3、绘图(1)绘制极坐标图:333sin cos ,sin cos 66θθππρθθθ=-≤≤+。

(2)绘制曲面图:225(,),3,31f x y x y x y=-≤≤++。

4、求非线性方程组2291x y x y ⎧+=⎨+=⎩,初值003,0x y ==的数值解。

5、已知某精密仪器的某部件轮廓线的数据如下用三次样条插值法求x 每改变0.1时的y 值。

6、 将矩阵4275a ⎡⎤=⎢⎥⎣⎦、7183b ⎡⎤=⎢⎥⎣⎦和5962c ⎡⎤=⎢⎥⎣⎦组合成两个新矩阵: (1)组合成一个43⨯的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素;(2)按照a 、b 、c 的列顺序组合成一个行向量。

7、有一组测量数据满足-at e y =,t 的变化范围为0~10,用不同的线型和标记点画出0.1a =、0.2a =和0.5a =三种情况下的曲线,并在图中添加标题-at e y =、用箭头线标识出各曲线a 的取值和图例框。

8. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况。

(1)21ln(2z x =+,其中2120.455i x +⎡⎤=⎢⎥-⎣⎦ (2) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e az a a --+=++=--(3) 2242011122123t t z t t t t t ⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t =0:0.5:2.5 9. 设有矩阵A 和B :123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。

Matlab实验题目与答案

Matlab实验题目与答案

(温馨提示:实验课结束后,请将所有作业(题目、代码、结果)利用word 整理成一个完整的实验报告,加上封面,打印,纸质档于18周周一交)第一次上机作业目的:1. 掌握MATLAB 各种表达式的书写规则2. 运行课堂上讲过的例子,熟悉矩阵、表达式的基本操作和运算。

作业:1. 熟悉matlab 集成环境界面。

回答以下问题,并操作相关的指令:(1) 分别写出清除命令窗口和清除变量的指令。

答: clc 和clear(2)在命令行输入命令后,matlab 的搜索过程是怎样的?答: (1)检查该命令对象是不是一个变量。

(2)检查该命令对象是不是一个内部函数。

(3)检查该命令对象是否为当前目录下的程序文件。

(4)检查该命令对象是否为MATLAB 搜索路径中其他目录下的M 文件。

(3)什么是matlab 的当前工作目录?写出两种设置当前工作目录的方法? 答: 就是matlab 当前文件读取和存储的默认路径(1)在当前目录窗口中更改(2)在MATLAB 桌面工具栏中更改(3)使用cd 命令:cd c:\mydir---将c :\mydir 设置为当前目录(4)什么是matlab 的搜索路径?写出两种设置搜索路径的方法?答: 指Matlab 运行文件时进行搜索的目录。

(1)用path 命令设置:(2)用Set Path 对话框设置(5)help 命令和doc 命令有什么作用,它们有什么区别?答: help 命令:最基本的帮助命令,查询信息直接显示在命令窗口。

doc 命令:在帮助窗口中显示HTML 帮助文档,显示函数的详细用法及 例子,比help 命令更详细。

2. 在matlab 中输入下列表达式,并求各表达式的值,显示MATLAB 工作空间的使用情况并用两种方式保存全部变量,变量保存的文件名必须包含自己的学号后四位数:(1))1034245.01(26-⨯+⨯=w w=sqrt(2)*(1+0.34245*10^-6)w =1.4142(2),)tan(22ac b e abc c b a x ++-+++=ππ 其中a=3.5,b=5,c=9.8。

2014 第一轮上机练习题答案matlab程序设计练习

2014 第一轮上机练习题答案matlab程序设计练习

练习1 基础练习一、矩阵及数组操作:1.利用基本矩阵产生3×3和15×8的单位矩阵、全1矩阵、全0矩阵、均匀分布随机矩阵([-1,1]之间)、正态分布矩阵(均值为1,方差为4)。

解eye(3) eye(15,8) ones(3) ones(15,8) zeros(3) zeros(15,8)X1=(1+(1-(-1))*rand(3))X2=(1+(1-(-1))*rand(15,8))Y1=1+sqrt(4)*randn(3)Y2=1+sqrt(4)*randn(15,8)2.利用fix及rand函数生成[0,10]上的均匀分布的10×10的整数随机矩阵a,然后统计a中大于等于5的元素个数。

解:a=fix((10-0+1)*rand(10)+0)x=5i=find(a>=x)n=length(i)3.在给定的矩阵中删除含有整行内容全为0的行,删除整列内容全为0的列。

解:A=[1 2 2 3 4;0 0 0 0 0;4 5 6 2 3;0 0 0 0 0;];A([2,4],:)=[]B=A';B(:,[2,4])=[]二、绘图:4.在同一图形窗口画出下列两条曲线图像:y1=2x+5;y2=x^2-3x+1,并且用legend标注。

解:x=0:0.01:10;y1=2*x+5;y2=x.^2-3*x+1;plot(x,y1,x,y2)legend('y1', 'y2')5.画出下列函数的曲面及等高线:z=x^2+y^2+sin(xy).解:[x,y]=meshgrid(0:0.25:4*pi); z=x.^2+y.^2+sin(x.*y);contour3(x,y,z);meshc(x,y,z)三、程序设计:6.编写程序计算(x在[-3,3],间隔0.01)解:x=input('ÇëÊäÈëxµÄÖµ:');if x>=-3&x<-1y=(-x.^2-4*x-3)/2;elseif x>=-1&x<1y=-x.^2+1;elseif x>=1&x<=3y=(-x.^2+4*x-3)/2;elsey='error'endy7.有一列分数序列:求前15项的和。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

练习1 基础练习一、矩阵及数组操作:1.利用基本矩阵产生3×3和15×8的单位矩阵、全1矩阵、全0矩阵、均匀分布随机矩阵([-1,1]之间)、正态分布矩阵(均值为1,方差为4)。

解eye(3) eye(15,8) ones(3) ones(15,8) zeros(3) zeros(15,8)X1=(1+(1-(-1))*rand(3))X2=(1+(1-(-1))*rand(15,8))Y1=1+sqrt(4)*randn(3)Y2=1+sqrt(4)*randn(15,8)2.利用fix及rand函数生成[0,10]上的均匀分布的10×10的整数随机矩阵a,然后统计a中大于等于5的元素个数。

解:a=fix((10-0+1)*rand(10)+0)x=5i=find(a>=x)n=length(i)3.在给定的矩阵中删除含有整行内容全为0的行,删除整列内容全为0的列。

解:A=[1 2 2 3 4;0 0 0 0 0;4 5 6 2 3;0 0 0 0 0;];A([2,4],:)=[]B=A';B(:,[2,4])=[]二、绘图:4.在同一图形窗口画出下列两条曲线图像:y1=2x+5;y2=x^2-3x+1,并且用legend标注。

解:x=0:0.01:10;y1=2*x+5;y2=x.^2-3*x+1;plot(x,y1,x,y2)legend('y1', 'y2')5.画出下列函数的曲面及等高线:z=x^2+y^2+sin(xy).解:[x,y]=meshgrid(0:0.25:4*pi); z=x.^2+y.^2+sin(x.*y);contour3(x,y,z);meshc(x,y,z)三、程序设计:6.编写程序计算(x在[-3,3],间隔0.01)解:x=input('ÇëÊäÈëxµÄÖµ:');if x>=-3&x<-1y=(-x.^2-4*x-3)/2;elseif x>=-1&x<1y=-x.^2+1;elseif x>=1&x<=3y=(-x.^2+4*x-3)/2;elsey='error'endy7.有一列分数序列:求前15项的和。

解:a=1;b=2;sum=0;for k=1:15c=b/a;sum=sum+c;t=b;b=a+b;a=t;endsum8.用至少三种方法编写函数实现求任意整数n的阶乘。

解:法一:s=factorial(n)法二:gamma(n) 求出的是(n-1)!法三:n=input('please input n:');x=1:n;prod(x)9.将任意大于6的偶数m写成两个素数p1、p2的和(试着写出所有的m=p1+p2的可能形式)。

解:function y=f(n);n=input('ÇëÊäÈënµÄÖµ:');if mod(n,2);error('n²»ÊÇËØÊý.ÇëÖØÐÂÔËÐгÌÐò.')elseif n<=6;error('n±ØÐë´óÓÚ6.ÇëÖØÐÂÔËÐгÌÐò.')elsefor m=1:n;for k=m:n;if (isprime(m))&(isprime(k))&(m+k==n);disp([num2str(n),'=',num2str(m),'+',num2str(k)]);break;end;end;end;end;10.是否任意3的倍数m可以写成两个素数p1、p2、p3的和(试着写出所有的m=p1+p2+p3的可能形式)?解:function y=fg(n);n=input('请输入n的值:');if mod(n,3);error('n不是3的倍数.请重新运行.')elseif n<6;error('n必须不小于6.')elsefor m=1:n;for k=m:n;for p=k:nif(isprime(m))&(isprime(k))&(isprime(p))&(m+k+p==n);disp([num2str(n),'=',num2str(m),'+',num2str(k),'+',num2str(p)]);break;end;end;end;end;end;四、数据处理与拟合初步:11.通过测量得到一组数据:分别采用y=c1+c2e^(-t)和y=d1+d2te^(-t)进行拟合,并画出拟合曲线进行对比。

解:t=1:10;y=[4.842,4.362,3.754,3.368,3.169,3.038,3.034,3.016,3.012,3.005];x1=exp(-t);x2=t.*exp(-t);y1=polyfit(x1,y,1)可以写出:y1=5.2165*exp(-t)+3.1564y2=polyfit(x2,y,1)可以写出:y2=5.0273*t.*exp(-t) +2.9973plot(t,y,t,y1,'r--',t,y2,'gx')另:此题也可以采用工具箱直接进行运算。

12.计算下列定积分:方法有很多种:解:(1)1建立被积函数文件function f=jifen1(t)f=exp(-2*t);2.在命令窗口输入:[z1,n]=quad(@jifen1,0,2)得到结果:z1=0.4908 n =25(2)x=0:0.01:2;z2=exp(2*x);trapz(x,z2)得到结果:ans =26.8000(3)z=quadl(inline('x.^2-3*x+0.5'),-1,1)得到结果:z =1.666713.微分方程组当t=0时,x1(0)=1,x2(0)=-0.5,求微分方程t在[0,25]上的解,并画出相空间轨道图像。

解:t=0:0.01:25;[x,y]=dsolve('Dx=0.5-x','Dy=x-4*y','x(0)=1','y(0)=-0.5','t')x =1/2+1/2*exp(-t)y =1/8+1/6*exp(-t)-19/24*exp(-4*t)plot(t,x,t,y)图像:t=0:0.01:25;x=1/2+1/2*exp(-t);y =1/8+1/6*exp(-t)-19/24*exp(-4*t);plot(t,x,t,y)14.设通过测量得到时间t与变量y的数据:t=[0 0.3 0.8 1.1 1.6 2.3];y=[0.5 0.82 1.14 1.25 1.35 1.41];分别采用多项式:y=a0+a1t+a2t2和指数函数y=b0+b1e^t+b2te^t进行拟合,并计算均方误差、画出拟合效果图进行比较。

解:此题可用工具箱来求解:可在commend window中输入cftool,调出工具箱。

选择date;之后选择fitting,建立new fit,选择自定义,定义所需函数即可。

详细过程略。

15.观察函数:y=e^x-1.5cos(2*pi*x)在区间[-1,1]上的函数图像,完成下列两题:(1)用函数fzero求解上述函数在[-1,1]的所有根,验证你的结果;(2)用函数fminbnd求解上述函数在[-1,1]上的极小、极大、最小和最大值,在函数图像上标出你求得的最小值点作出验证。

注:可以用help fzero命令查看fzero的调用格式,fzero典型的调用方法是:fzero(@myfun,x0) %返回函数myfun在x0附近的根;fminbnd典型的调用方法是:fminbnd(@myfun,x1,x2) %返回函数myfun在区间[x1,x2]上的最小值。

解:(1)x=-1:0.01:1;y=exp(x)-1.5*cos(2*pi*x);plot(x,y,'g')hold ony0=0;plot(x,y0,'k')z=fzero('f',-0.8)z =-0.7985z=fzero('f',-0.1)z =-0.1531z=fzero('f',0.1)z =0.1154(2)f.mfunction y=f(x);y=exp(x)-1.5*cos(2*pi*x);x=fminsearch('f',-0.2,0.2)x =-0.0166x=fminsearch('f',-1,1)x =-1.0062f1.mfunction y=f(x);y=-exp(x)+1.5*cos(2*pi*x);x=fminsearch('f1',0.4,0.6)x =0.5288x=fminsearch('f1',-0.6,-0.4)x =-0.4897x1=-1.0062 ;y1=exp(x1)-1.5*cos(2*pi*x1)y1 =-1.1333plot(x1,y1,'*')练习2 编程练习1. 题目:判断101-200之间有多少个素数,并输出所有素数。

编写以fun1为名的脚本文件。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。

==================================================== t=1;for i=101:200for j=1:iif (round(i/j)==(i/j)&j~=1&j~=i)breakendendif j==i s(t)=i; t=t+1;endenddisp(['ËØÊý:',num2str(s)])length(s)2.题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

相关文档
最新文档