编程MATLAB

来源:百度知道 编辑:UC知道 时间:2024/07/18 01:48:09
1. 用起泡法对10个数有小到大排序,即将相邻两个数比较,将小的调到前头
2. 有一个4行5列矩阵,编程求其最大值及其所处位置;
3.编程求n!n从1到20
4.一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第十次落地时,共经过多少米?
第十次反弹有多高?
5. 有一函数f(x,y)=x^2+sinxy+2y,写一程序,出入自变量的值,输出函数值
有高手能帮忙做下答案吗 用MATLAB做下 谢谢 我有急用

%-------------------
%第四题没有任何问题。鉴定完毕。

clear;clc
%1
disp('第一题:')
A=randperm(10)
for i=9:-1:1
for j=1:i
if A(j)>A(j+1)
temp=A(j+1);A(j+1)=A(j);A(j)=temp;
end
end
end
disp('排序后:');disp(A)

%2
disp('第二题:')
B=rand(4,5)
[M,i]=max(B);[M,j]=max(M);
disp(sprintf('max(B)=B(%d,%d)=%f\n',i(j),j,M))

%3
disp('第三题:')
vpa(cumprod(1:20))'

%4
disp('第四题:')
100+sum(200./2.^(1:9))

%5
disp('第五题:')
f=@(x,y)x.^2+sin(x.*y)+2*y;
disp('举个例子:');disp('f(2,3)')
f(2,3)

下面给的第四题不对。应该是100+sum(100/2^(1:9))