| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) | 
![]()  | 
	
| 
	 | 
| 		
			
			 | 
		#1 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2008-04-03 
				
				年龄: 43 
				
					帖子: 1
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			小第遇了个难题,跪请各位大哥帮忙~ 
		
		
		
		
		
		
		
	A是一维数组 怎样用for循环实现 x=[A^1,A^2,A^3,....] 这样x变成多维数组 比如 A=[1;2;3] for i=1:3; x(i)=A^i; end 怎么改才正确呢 谢谢诸位了~  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#2 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2008-08-05 
				
				年龄: 26 
				
					帖子: 21
				 
				
				
				声望力: 18 ![]()  | 
	
	
	
		
		
			
			 
			
			没仔细看,你试试 
		
		
		
		
		
		
		
	x(i)=A(i)^i 吧。  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#3 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2008-08-20 
				
				年龄: 35 
				
					帖子: 6
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			(1)矩阵的乘方要求矩阵是一个n*n的矩阵。所以你的例子中的A取得就不恰当,它A^2根本不能计算。(2)应注意X应该是一个二维数组,而不是一维了
		 
		
		
		
		
		
		
		
	 | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 | 
| 		
			
			 | 
		#4 | 
| 
			
			 普通会员 
			
			
			
			注册日期: 2008-04-05 
				
				年龄: 83 
				
					帖子: 37
				 
				
				
				声望力: 18 ![]()  | 
	
	
	
		
		
			
			 
			
			是不是可以改成这样: 
		
		
		
		
		
		
		
	for i=1:3; x(:,i)=A.^i; end 其中A可以为任意表示的一维矩阵(一行).  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |