精选-MATLAB上机作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB 上机作业1
对以下问题,编写M 文件:
(1) 用起泡法对10个数由小到大排序。即将相邻两个数比较,将小的调到前头。 function f=qipaofa(x)
for j=9:-1:1
for i=1:j
if(x(i)>x(i+1))
t=x(i);x(i)=x(i+1);x(i+1)=t;
end
end
end
f=x
x=round(10*rand(1,10))
qipaofa(x);
(2) 有一个4×5矩阵,编程求出其最大值及其所处的位置。
function f=zuidazhi(x)
a=1;b=1;c=x(1,1);
for i=1:4
for j=1:5
if x(i,j)>c
a=i;b=j;c=x(i,j);
end
end
end
f=[c,a,b]
x=rand(4,5)
zuidazhi(x)
(3) 编程求∑=20
1
!n n 。
function f=qiuhe(x)
b=0;
for i=1:x
a=prod(1:i);
b=b+a;
end
f=b
qiuhe(20)
(4)一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。
求它在第10次落地时,共经过多少米?第10次反弹有多高?
function f=gao(x)
b=x;
for i=2:10
x=x/2;
a=x*2;
b=b+a;
end
f=[b x/2]
gao(100)
(5)有一函数y xy x y x f 2sin ),(2++=,写一程序,输入自变量的值,输出函数值。 Function f=fun(x)
f=x(1)^2+sin(x(1)*x(2))+2*x(2)
MATLAB 上机作业2
1. 求和 4024441++++=ΛY 。
syms k
s=4^k;
S=symsum(s,k,0,40)
2. 求函数71862)(23+--=x x x x f 的极值,并作图。
y='2*x^3-6*x^2-18*x+7';
y_='-2*x^3+6*x^2+18*x-7';
[x_min,y_min]=fminbnd(y,-7,7)
[x_max,y_max]=fminbnd(y_,-7,7)
ezplot(y)
3. 设2
5cos 7sin x x x e y x +-=,求??,22==dx y d dx dy y=exp(x)*sin(x)-7*cos(x)+5*x^2;
dy=diff(y)
d2y=diff(y,2)
4. 求积分 dx x I ⎰-=2
/012sin 21π。
syms x
y=sqrt(1-2*sin(2*x));
F=int(y,0,pi/2)
5. 求积分 ⎰⎰=D dxdy y x I 2
22,其中D 为直线x y x y x y -===12,2/,2围成的区域。 syms x y
f=x^2/y^2;
int(int(f,y,x/2,x*2),x,0,4)+int(int(f,y,x/2,12-x),x,4,8)
6. 分别随机产生一个6×6的整数矩阵(元素可在]20,20[-之间),求该随机阵的行最简形,秩,行列式,逆矩阵,列向量组的一个极大线性无关组,特征值和特征向量。
a=round(-20+40*rand(6))
rref(a)
rank(a)
det(a)
inv(a)
[V,D]=eig(a)
7. 求解方程组的通解 ⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧=-++-+-=+++--=+++-=-+++=-++-+=+-+++2
466355542548
43219526335544242364265432165432642165321654321
654321x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
A=[1 2 4 6 -3 2;2 4 -4 5 1 -5;3 6 2 0 5 -9;2 3 0 4 0 1;0 -4 -5 2 1 4 ;5 5 -3 6 6 -4 ];
b=[4 3 -1 8 -5 2]';
B=[A b];
C=rref(B)
A=[1 2 4 6 -3 2;2 4 -4 5 1 -5;3 6 2 0 5 -9;2 3 0 4 0 1;0 -4 -5 2 1 4 ;5 5 -3 6 6 -4 ];
b=[4 3 -1 8 -5 2]';
B=[A b];
n=6;
R_A=rank(A)
R_B=rank(B)
format rat
if R_A==R_B&R_A==n
X=A\b
elseif R_A==R_B&R_A X=A\b C=null(A,'r') else X='equation has no solves' end syms k1 k2 X=k1*C+X pretty(X)