PDA

查看完整版本 : 用MATLAB有条件的随机产生一组数


savioryu
2008-12-01, 22:01
比如说产生10个数,对这10个数有一定的限制条件:
(1)在一定范围之内;
(2)个数据之间不能变化太大。

guofeng0108
2008-12-02, 09:49
用rand函数和你所在的范围加或者乘就可以了!!!!!!!!!!

savioryu
2008-12-02, 10:37
谢谢你!

第二个问题 限定各个数据之间相差不大怎么做到呢?

savioryu
2008-12-02, 10:56
用rand函数和你所在的范围加或者乘就可以了!!!!!!!!!!

能给出具体一定的形式吗? 比如说,随机产生A[i],B[i]个十组数。取值范围应满足:A[i] 应远远小于 B[i],0<(A[i]+B[i]的增量)<10000;

guofeng0108
2008-12-02, 12:24
rand函数不就是0到1之间,相差本来就不大啊 !!!!!!!!
比如a=50+rand()
b=2000+rand()

savioryu
2008-12-02, 15:27
a=10+fix(100.*rand(1,10))
b=45000+fix(5000.*rand(1,10))

谢谢你的启发,我用的是这种形式的产生方法,其它情况待定!

savioryu
2008-12-05, 10:49
rand函数不就是0到1之间,相差本来就不大啊 !!!!!!!!
比如a=50+rand()
b=2000+rand()

请问:我想生成(-0.5,1)之间的随机数怎么做呢?:lovely: