登录论坛

查看完整版本 : 【求助】如何产生随机解


zhailiangjun
2008-02-28, 10:14
请教各位大虾们,小弟最近遇到这样的一个问题,例如有这样一个方程,a+b+c+d=1222。我该如何编程序随机产生产生一组a,b,c,d的解呐,能帮忙写下程序吗

dnping
2008-02-28, 10:37
a=randperm(122);
b=randperm(122);
c=randperm(122);
d=122-a-b-c

or

a=rand(n,1)*m;
b=rand(n,1)*m;
c=rand(n,1)*m;
d=122-a-b-c

我的理解就是这样,随机产生n个数,然后d就可以唯一确定了,m就是你需要的位数,如果两位整数则m=100,一位整数则m=10,a,b,c要负数的话,用randn命令即可……

zhailiangjun
2008-03-07, 16:12
谢谢你的热心回复,小弟在此拜谢了。但是,在实际中的方程却比这个要复杂的多,没有办法写成d=122-a-b-c此类的解形式,不知大哥是不是还有其它办法没有。