| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) | 
![]()  | 
	
| 		
			
			 | 
		#1 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-12-02 
				
				
				
					帖子: 4
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			请教各位大虾们,小弟最近遇到这样的一个问题,例如有这样一个方程,a+b+c+d=1222。我该如何编程序随机产生产生一组a,b,c,d的解呐,能帮忙写下程序吗
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#2 | 
| 
			
			 高级会员 
			
			
			
			注册日期: 2007-07-26 
				
				年龄: 41 
				
					帖子: 268
				 
				
				
				声望力: 25 ![]()  | 
	
	
	
		
		
			
			 
			
			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命令即可……  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#3 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2007-12-02 
				
				
				
					帖子: 4
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			谢谢你的热心回复,小弟在此拜谢了。但是,在实际中的方程却比这个要复杂的多,没有办法写成d=122-a-b-c此类的解形式,不知大哥是不是还有其它办法没有。
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |