📄 randu2.m
字号:
%%小数开方伪随机数发生器
%输入格式说明 randmtx=randU2(10,10,10000,0,1)
%%row为 伪随机数的行数 col伪随机数阵列的列数 seed为种子
%k1k2为随机数的范围 k1=0 k2=1表示结果从0-1之间的数
function randmtx=randU2(row,col,seed,k1,k2)
if nargin<3
seed=11;
end
m=4;
seed2=sqrt(seed);
while seed2<1
seed2=seed2810;
end
n=round(seed2/m);%向最近整数园整
x=(10^n)*seed2;
randmtx(1,1)=x-floor(x);
for i=2:row*col
temp=sqrt(abs(randmtx(1,i-1)));
while temp<1
temp=temp*10;
end
n=round(temp/m);
x=(10^n)*temp;
randmtx(1,i)=(x-floor(x));
end
randmtx=reshape(randmtx,row,col);
if nargin <4
return
end
randmtx=randmtx*(k2-k1)+k1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -