matlab程序,在线等,请大家帮忙看看,下面的函数的功能是什么?

来源:百度知道 编辑:UC知道 时间:2024/05/28 17:48:17
function m=p(n)
m=1:n;
for i=1:n
a=ceil((n-i+1)*rand(1));
b(1,i)=m(1,a);
for j=a:n-i
m(1,j)=m(1,j+1);
end
end
disp(b)

function m=p(n)
m=1:n;
for i=1:n
a=ceil((n-i+1)*rand(1));
b(1,i)=m(1,a);
for j=a:n-i
m(1,j)=m(1,j+1);
end
disp(b)
disp(m)%给出每步循环的中间量
end
disp(b)

结果为:
>> n=4;
1
2 3 4 4
1 3
2 4 4 4
1 3 4
2 4 4 4
1 3 4 2
2 4 4 4
1 3 4 2
ans =
2 4 4 4

这个具体得到的m,b的含义我也不明白,但是可以根据m和b得到每步的a 是多少,这里为:1,2,2,1

function m=p(n)
m=1:n; %这句话啥玩意儿,m是输出,怎么直接就出来了,下面的还用个毛啊
for i=1:n
a=ceil((n-i+1)*rand(1));
b(1,i)=m(1,a);
for j=a:n-i
m(1,j)=m(1,j+1);
end
end
disp(b)

分错类了!看得头疼了!还有不认识的函数分对类了再来吧!