matlab答案

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

第一章
2.在命令窗口输入''w=3+2'',然后依次使用clear和clc命令,分别观察命令窗口、工作空间窗口和历史命令窗口的变化。

使用clear命令时,命令窗口无变化,工作空间窗口中的内容被删除,历史命令窗口多出一条命令记录。

使用clc命令时,命令窗口中的内容被删除,工作空间窗口无变化,历史命令窗口中多出一条命令记录
3.将硬盘上一已有目录,加入到搜索路径,并将其设置为当前工作目录。

File-set path-add folder-save
第二章
1.计算复数3+4i与5-6i的乘积。

a=3+4i
b=5-6i
c=a*b
2.构建结构体Students,属性包含Name、age和Email,数据包括{'Zhang',18,*'Zhang@16
','Zhang@'+}、{'Wang',21,[]}和{'Li',[],[]},构建后读取所有Name属性值,并且修改'Zhang'的Age属性值为19。

Students(1).Name='Zhang'
Students(1).Age=18
Students(1).Email='Zhang@','Zhang@'
Students(2).Name='Wang'
Students(2).Age=21
Students(2).Email=[]
Students(3).Name='Li'
Students(3).Age=[]
Students(3).Email=[]
Student(1).Age=19
Student(1).Age
3.用满矩阵和稀疏矩阵存储方式分别构造下属矩阵:
A=[0 1 0 0 0;1 0 0 0 0;0 0 0 0 0;0 0 0 1 0] ;
F=full(A)
S=sparse(A)
S=sparse([2,1,4],[1,2,4],[1,1,1],4,5)
4.采用向量构造符得到向量[1,5,9....,41].
A=1:4:41
5.按水平和竖直方向分别合并下述两个矩阵:
A=[1 0 0;1 1 0;0 0 1],B=[2 3 4;5 6 7;8 9 10]
A=[1 0 0;1 1 0;0 0 1] ;
B=[2 3 4;5 6 7;8 9 10] ;
C=[A B]
D=[A;B]
6.分别删除第五题两个结果的第2行。

A=[1 0 0;1 1 0;0 0 1]
B=[2 3 4;5 6 7;8 9 10]
C=[A B]
D=[A;B]
C(2,:)=[]
D(2,:)=[]
7.分别将第5题两个结果的第2行最后3列的数值改为[11 12 13]。

A=[1 0 0;1 1 0;0 0 1]
B=[2 3 4;5 6 7;8 9 10]
C=[A B]
D=[A;B]
C(2,4:6)=[11 12 13]
D(2,:)=[11 12 13]
8.分别查看第5题两个结果的各方向长度
A=[1 0 0;1 1 0;0 0 1]
B=[2 3 4;5 6 7;8 9 10]
C=[A B]
D=[A;B]
a=size(C)
b=size(D)
9.分别判断pi是否为字符串和浮点数。

tf=ischar(pi)
tf=isfloat(pi)
10.分别将第5题两个结果均转换为2*9的矩阵。

A=[1 0 0;1 1 0;0 0 1]
B=[2 3 4;5 6 7;8 9 10]
C=[A B]
D=[A;B]
E=reshape(C,2,9)
F=reshape(D,2,9)
11.计算第5题矩阵A的转秩。

A=[1 0 0;1 1 0;0 0 1]
B=transpose(A)
12.分别计算第5题矩阵A和B的A+B、A.*B和A\B。

A=[1 0 0;1 1 0;0 0 1]
B=[2 3 4;5 6 7;8 9 10]
C=A+B
D=A.*B
E=A\B
13.判断第5题矩阵A和B中哪些元素值不小于4。

A=[1 0 0;1 1 0;0 0 1]
B=[2 3 4;5 6 7;8 9 10]
A>=4
B>=4
14.分别用函数strcat()和矩阵合并符合并如下字符串:'The picture is'和'very good'。

a=' The picture is '
b=' very good '
c=strcat(a,b)
d=[a b]
15.创建字符串数组,其中元素分别为'Picture'和'Pitch'。

a=char('Picture','Pitch')
16.在第14题结果中查找字符串'e'。

a=' The picture is '
b=' very good '
c=strcat(a,b)
d=[a b]
e=strfind(c,'e')
f=strfind(d,'e')
17.在第15题结果中匹配字符串'Pi'。

a=char('Picture','Pitch')
x=strmatch('Pi',a)
18.将字符串'very good'转换为等值的整数。

a=double('very good')
19.将十进制的50转换为二进制的字符串。

a=dec2bin(50)
20将十六进制的字符串'50'转换为三进制的整数。

a=hex2dec('50')
b=dec2base([a],3)
c=str2num(b)
第三章
1.计算矩阵A的二范数、行列式、秩、化零空间和正交空间。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
N=norm(A)
A_det=det(A)
Z=null(A)
Q=orth(A)
b=rank(A)
2.求解线性方程组AX=B,其中A如第1题所示,B=[1 1 1 1 1]的转秩。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
B=transpose([1 1 1 1 1])
X=A\B
3.对矩阵A进行LU分解和Schur分解,其中A如第1题。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
[L1,U1]=lu(A)
[U2,L2]=schur(A)
4对矩阵A的前4行进行QR分解和奇异值分解,其中A如第1题。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
B=A(1:4,:)
[Q,R]=qr(B)
[U S V]=svd(B)
5计算矩阵A的特征值及对应的特征向量,判断矩阵A是否可对角化,其中A如第1题。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
[V,D]=eig(A)
a=inv(V)*A*V-D
6.计算矩阵A的指数、开平方和余弦值,其中A如第1题。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
Y1=expm(A)
Y2=sqrtm(A)
Y3=funm(A,@cos)
7.计算矩阵A每个元素的指数、开平方和余弦值(元素单位为度),其中A如第1题。

A=[17 24 1 8 50;23 5 7 14 49;4 6 13 20 43;10 12 19 21 62;11 18 25 2 56]
Y1=exp(A)
Y2=sqrt(A)
Y3=cosd(A)
8.计算复数矩阵C每个元素的模、相角和共轭。

C=[3+4i 2-i -i;2 -2 0]。

C=[3+4i 2-i -i;2 -2 0]
Y1=abs(C)
Y2=angle(C)
Y3=conj(C)
9.分别使用函数fix()、floor()、ceil()和round(),计算第8题中的相角结果。

C=[3+4i 2-i -i;2 -2 0]
Y1=fix(C)
Y2=floor(C)
Y3=ceil(C)
Y4=round(C)
10.将2-i的模结果近似为有理数,并以数值形式显示。

a=2-i
Y1=abs(a)
Y2=rats(Y1)
11.计算,其中m=4!和n是42与35的最大公因式。

n=gcd(42,35)
m=factorial(4)
c=nchoosek(m,n)
12.将球坐标系中的点(1,1,1)分别转换到笛卡尔坐标系和极坐标系。

[a,b,c]=sph2cart(1,1,1)
[d,e,f]=cart2pol(a,b,c)
第六章
1. 将多项式A的系数向量形式[1 2 4 2 1]转换为完整形式,并将多项式B的完整形式2x^5+x^2+3x+5表示为系数向量形式。

syms x;
A=[1 2 4 2 1]
[s,len]=poly2str(A,'x')
B=2*x^5+x^2+3*x+5;
b=[2 0 0 1 3]
2. 针对第一题A,计算自变量为1~10
A=[1 2 4 2 1];
p=[1 2 3 4 5 6 7 8 9 10];
r_A=polyval(A,p)
3.针对第一题A 和B,计算A和B的乘法和除法。

p1=[1 2 4 2 1];
p2=[2 0 0 1 3 5];
w=conv(p1,p2)
[q,r] = deconv(p2,p1);
sq=poly2str(q, 'x')
sr=poly2str(r, 'x')
4.针对第一题A 和B,计算A/B的微分。

A=[1 2 4 2 1];
B=[2 0 0 1 3 5];
[q,d]=polyder(A,B)
5.针对第一题A,计算其积分。

A=[1 2 4 2 1];
s1=polyint(A)
8.针对函数f(x)=exp(x)在x{0,0.1,0.2,......,5}上的取值,采用多项式进行拟合并对x{0.15,0.45,0.75}分别采用最邻近、双线性和三次样条插值方法进行插值。

x=0:0.1:5;
y=exp(x);
p=polyfit(x,y,5)
y=polyval(p,x)
plot(x,y,'ro')
xlabel('x');
ylabel('y');
x=0:0.1:5;
y=exp(x);
xi = [0.15,0.45,1.75]
yi_nearest = interp1(x,y,xi,'nearset');
yi_linear = interp1(x,y,xi);
yi_spline = interp1(x,y,xi,'spline ');
figure;
hold on;
subplot(1,3,1);
plot(x,y,'ro',xi,yi_nearest,'r-');
title('最邻近法');
subplot(1,3,2);
plot(x,y,'ro',xi,yi_linear,'b-');
title('双线性法');
subplot(1,3,3);
plot(x,y,'ro',xi,yi_spline,'g--');
title('三次样条插值法');
9.针对二维函数f(x)=exp(xy)在x{0,0.1,0.2,......,5};y{0,0.1,0.2,......,5}上的取值,对(x,y){(0.15,0.15),(0.45,0.45),(0.75,0.75)}分别采用最邻近、双线性和三次样条插值方法进行插值。

x=0:0.1:5;
y=exp(x);
xi = [0.15,0.45,1.75]
yi_nearest = interp1(x,y,xi,'nearset');
yi_linear = interp1(x,y,xi);
yi_spline = interp1(x,y,xi,'spline ');
figure;
hold on;
subplot(1,3,1);
plot(x,y,'ro',xi,yi_nearest,'r-');
title('最邻近法');
subplot(1,3,2);
plot(x,y,'ro',xi,yi_linear,'b-');
title('双线性法');
subplot(1,3,3);
plot(x,y,'ro',xi,yi_spline,'g--');
title('三次样条插值法');
10.产生40个服从正态分布N(-1,4)的随机数,计算它们的最大值、最小值、平均值、中间值、元素和、标准差和方差,斌按照绝对值大小进行排序,同时标出原来的序列号。

y=normrnd(-1,4,1,40);
y_max=max(y)
y_min=min(y)
y_mean=mean(y)
y_sum=sum(y)
y_s=std(y)
y_var=var(y)
x=abs(y)
[z,iz]=sort(x)
15.针对函数y=sin()x[0,10],绘制其图像,并计算最大值、最小值和零点。

f = @(x)sin((x+1)./(x.^2+1));
fplot(f,[0 10],1e-4,'r-');
title('y=sin((x+1)/(x^2+1))');
xlabel('x');
ylabel('y');
grid;
x_min=fminbnd(f,0,10)
x_zero = fzero(f,[-5,10])
16.针对第十五题的函数,计算在[0,10]上的积分。

f = @(x)sin((x+1)./(x.^2+1));
q = quad(f,0,10)
17.计算expxydxdy0y -101òò。

f=@(x,y) exp(x*y).*(x+y<=1)
dblquad(f,0,1,0,1,1e-6,@quadl)
18.通过在功能函数中使用含参函数,实现计算函数f(x)=x^2+ax+b的零点。

(1).function y=fzero_nestedfun(a,b,x0)
options=optimset('display','off');
y=fzero(@para_fun,x0,options);
function y=para_fun(x)
y=x^2+a*x+b;
end
end
(2)
a=1;
b=-10:10;
x=zeros(size(b));
for i=1:length(b)
x(i)=fzero_nestedfun(a,b(i),0);
end
plot(b,x);
xlabel('b');
ylabel('零点')
19. 计算微分方程y'''+2y''+y=e(t[0,2])且初始值为0的解。

function dydt=ivpodefun(t,y)
dydt=zeros(3,1);
dydt(1)=y(2);
dydt(2)=y(3);
dydt(3)=exp(t)-2*y(3)-y(1);
end
[t,y]=ode45(@ivpodefun,[0 2],[0;0;0]); plot(t,y(:,1),'-',t,y(:,2),'--',t,y(:,3),'*') title('常微分方程的解');
xlabel('t');
ylabel('y');
legend('y','y的一阶导数');。

相关文档
最新文档