проблема вычисления матрицы массива

#arrays #matlab #matrix

Вопрос:

У меня есть 12 матриц размером 3×3,я должен округлить все them.as в результате у меня должно быть 12 матриц с 3 строками и 3 столбцами .когда я запускал свой код ,у меня было 12 матриц с 12 строками и 3 столбцами. мой код такой:

 c=0;
for i=1:12
   for j=1:3
       newmatrix(i,:,j)= (round(G_SUB_A3_N1(i,:,j),8,'decimal'));
       c=c 1;
    end
end 
 

Комментарии:

1. Вы путаете порядок индексирования, его строку, столбец, страницу, см. Как индексировать многомерные массивы . Поменяйтесь i местами и j .

2. round применяется к ND-массивам, и тип округления по умолчанию 'decimals' равен . Так что вы можете использовать только newmatrix = round(G_SUB_A3_N1, 8);