2013-08-25 1 views
0

Я хочу, чтобы сохранить результаты этого для к различным переменным, например, матрица A1, A2 и A3.Как назначить выходные результаты на петле для максимумов в различные переменные

B:matrix([0,-%pi/2,theta[1],0],[0,%pi/2,0,d[2]],[a[3],0,theta[3],0]); 

D:matrix_size(B); 

for i: 1 step 1 thru D[1] do 
display(A:matrix([cos(B[i,3]),(-sin(B[i,3])*cos(B[i,2])), sin(B[i,3])*sin(B[i,2]), 
    B[i,1]*cos(B[i,3])],[sin(B[i,3]),cos(B[i,3])*cos(B[i,2]),- 
    cos(B[i,3])*sin(B[i,2]),B[i,1]*sin(B[i,3])],[0,sin(B[i,2]),cos(B[i,2]),B[i,4]],[0,0,0,1])); 

Спасибо.

ответ

0

Вы можете использовать operator ::

B:matrix([0,-%pi/2,theta[1],0],[0,%pi/2,0,d[2]],[a[3],0,theta[3],0]); 

D:matrix_size(B); 

for i: 1 step 1 thru D[1] do 
concat('A, i) :: matrix([cos(B[i,3]),(-sin(B[i,3])*cos(B[i,2])), sin(B[i,3])*sin(B[i,2]), 
    B[i,1]*cos(B[i,3])],[sin(B[i,3]),cos(B[i,3])*cos(B[i,2]),- 
    cos(B[i,3])*sin(B[i,2]),B[i,1]*sin(B[i,3])],[0,sin(B[i,2]),cos(B[i,2]),B[i,4]],[0,0,0,1]); 
1

Просто используйте индексируются переменные.

for i:1 thru 3 do A[i] : <complicated stuff>; 

Построение переменных A1, A2, A3 ... возможно, но считается плохим.