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)