利用MATLAB程序,随机生成10个0~10之间的随机数,赋值为变量a

来源:百度知道 编辑:UC知道 时间:2024/06/07 11:22:44
1、随机生成10个0~10之间的随机数,赋值为变量a,利用MATLAB程序类型中的“函数文件”(function)编写函数,以变量a为输入函数,对这10个数进行排序(升序或者降序),并输出结果到变量b中。

function y=cmp(x);
%升序排列
%------------------------------
n=length(x);
for i=1:1:n-1
for k=(i+1):1:n
if x(i)>x(k)
x1=x(i);
x(i)=x(k);
x(k)=x1;
end
end
end
y=x;

产生随机数:
a=10*rand(1,10);
b=cmp(a)即可以看到排列的结果

clear
clc
a=round(rand(1,10)*10)
b=paixu(a,0)

排序函数,x为输入向量,m等于0时输出升序,m等于1时输出降序,y为输出
function y=paixu(x,m)
if m==0
y=sort(x);
else
y=fliplr(sort(x));
end

function b=fun(a)
[m,n]=size(a);
for i=1:n
for j=1:n-1
if a(j)<a(j+1)
t=a(j);
a(j)=a(j+1); %降序
a(j+1)=t;
end
end
b=a;

调用格式:
a=randperm(11)-1
b=fun(a)

help rand
help sort