Matlab上机练习题及答案
---------------------------------------------------------------------
24??5?0151??,给出元素1的全下标1、 矩阵Y= ??4510023???21473??和单下标,并用函数练习全下标和单下标的转换,0?68???1??9?4012.3?,取出其前两4、创建矩阵a=??005.1?2???0?230?7??列构成的矩阵b,取出前两行构成矩阵c,转置矩阵b
构成矩阵d,计算a*b、c
a=[-1,0,-6,8;-9,4,0,12.3;0,0,5.1,-2;0,-23,0,-7] 求出元素100的存储位置。取出子矩阵??10??321?,?并求该矩阵的维数。
解:命令为:
Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10)
sub2ind([4 3],2,3) [i,j]=ind2sub([4 3],10)
find(Y==100) sub2ind([4 3],3,2)
B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y)
--------------------------------------------------------------------- 2、已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1 0;2 1 3;1 1 2] 求2A+B、A2-3B、A*B、B*A、A .*B,A/B、A\\B 解:命令为:
A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] 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
---------------------------------------------------------------------
b=a(:,[1 2]) c=a([1 2],:) d=b’ e=a*b f=c
--------------------------------------------------------------------- 205、求
?n!
n?1解:命令文件为 sum=0; s=1;
for n=1:20 s=n*s;
sum=sum+s; end sum
--------------------------------------------------------------------- 6、求Sn?a?aa?aaa???aa?a得值,其中a是一个数字,由键盘输入,表达式中位数最多项a的个数,也由键盘输入。例如:输入a=3,n=4,
解:命令文件为
sum=0; s=0;
a=input('请输入a的值:') n=input('请输入n的值:') for i=1:n
s=s+a*10^(i-1); sum=sum+s;
end
sum
---------------------------------------------------------------------
--------------------------------------------------------------------- 10、求下列极限值(1)limsin2x
x??0sin5x7、计算下列分段函数的值:
?0x?f(x)???x?3545?x?10
??2xx?10解:命令文件为
x=input('输入x的值:') if x<=5 f=0;
elseif x>5&x<=10 f=(x-3)/4.0; else
f=2*x; end f
--------------------------------------------------------------------- 8、有一群鸡和兔子,加在一起头的数量是36,脚的数量是100,编程序解答鸡和兔子数量各是多少? 解:命令文件为 for x=0:36
for y=0:36-x
if (x+y==36)&(2*x+4*y==100) disp('鸡有:') disp(x)
disp('兔子有') disp(y) end end end
--------------------------------------------------------------------- 9、(1) 化简表达式f?cos2x?2sin2x; (2)对表达式x4?x2?6进行因式分解。 解:命令文件为 syms x
f1=cos(2*x)+(sin(x))^2 f2=x^4-x^2-6 t1=simple(f1) t2=factor(f2)
(2)lim(x??x2?x?x2?x)
解:命令文件为 syms x
f1=sin(2*x)/sin(5*x)
f2=sqrt(x^2+x)-sqrt(x^2-x) t1=limit(f1,x,0) t2=limit(f2,x,inf)
--------------------------------------------------------------------- 11、求下列级数之和
(1)s1?x?2x2?3x3?nxn(2)s2?1?4?9?16?10000
解:命令文件为: syms x n m s1=n*x^n s2=n^2
t1=symsum(s1,n,1,n) t2=symsum(s2,n,1,100)
--------------------------------------------------------------------- 12、在区间1
subplot(121); axis equal;
fplot('sqrt(x^2-1)+x',[1 4],'r:') subplot(122);
fplot('sin(5*x^2+3)',[1 4],'-.g') axis square;
--------------------------------------------------------------------- 13、x???2,2?,y?[?2,2],自己设定步长,产生三维
网格X,Y,并在一个图形窗口的四个子窗口分别绘制z?x?e?x2?y2的三维网格图,带底座的三维网格
图,三维曲面图和带等高线的三维曲面图。 解: figure;
[X,Y]=meshgrid(-2:0.1:2); Z=X.*exp(-X.^2-Y.^2); subplot(2,2,1)
mesh(X,Y,Z) %mesh绘制三维网格图,meshz绘制带底座的三维网格图
title ‘三维网格图’ subplot(2,2,2) meshz(X,Y,Z)
title ‘带底座的三维网格图’ subplot(2,2,3) surf(X,Y,Z)
title ‘三维曲面’ subplot(2,2,4) surfc(X,Y,Z)
title ‘带等高线的三维曲面’
相关推荐: