返回信息流100个正太分布的随机数,取大小在中间的某一个数,比这个数大的就通过,比他小的数进行随机正太分布重新赋值,直到所有100个数全部通过为止
请教这个代码应该怎么表达?
这是一条镜像帖。来源:北邮人论坛 / matlab / #8237同步于 2011/5/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
求教怎么表达这个循环????????
AEGIS1989
2011/5/23镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
【 在 feiye 的大作中提到: 】
: 问题描述不清楚,取大小在中间的某一个数,这个数一直没有变化? 比他小的数又是怎么重新赋值的,比如有10个数小,是不是 r=randn(10,1) 重新赋值
: --
所取数值一直不变,直到循环结束
比他小的原数组,就再赋一个正态分布的随机数组,再比较~~
n=100;
x=randn(n,1);
x0=median(x);
re=zeros(n,1);
k=1;
while (k<n+1)
d=find(x>x0);
dl=length(d);
k1=dl;
k2=k+k1-1;
if k2>n
k2=n
end
for i=k:k2
re(i,1)=x(d(i+1-k));
end
k=k+k1;
x=randn(n-k+1,1);
end
【 在 feiye 的大作中提到: 】
: n=100;
: x=randn(n,1);
: x0=median(x);
: ...................
感激得痛哭流涕~~~~~
论坛还是北邮的好!