Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-02-28, 10:14   #1
zhailiangjun
初级会员
 
注册日期: 2007-12-02
帖子: 4
声望力: 0
zhailiangjun 正向着好的方向发展
默认 【求助】如何产生随机解

请教各位大虾们,小弟最近遇到这样的一个问题,例如有这样一个方程,a+b+c+d=1222。我该如何编程序随机产生产生一组a,b,c,d的解呐,能帮忙写下程序吗
zhailiangjun 当前离线   回复时引用此帖
旧 2008-02-28, 10:37   #2
dnping
高级会员
 
注册日期: 2007-07-26
年龄: 40
帖子: 268
声望力: 24
dnping 是一个将要出名的人
默认

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命令即可……
dnping 当前离线   回复时引用此帖
旧 2008-03-07, 16:12   #3
zhailiangjun
初级会员
 
注册日期: 2007-12-02
帖子: 4
声望力: 0
zhailiangjun 正向着好的方向发展
默认

谢谢你的热心回复,小弟在此拜谢了。但是,在实际中的方程却比这个要复杂的多,没有办法写成d=122-a-b-c此类的解形式,不知大哥是不是还有其它办法没有。
zhailiangjun 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 05:54


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.