Как отформатировать printf для создания таблицы умножения?

#printf #multiplication

#printf #умножение

Вопрос:

У меня есть код и функция, которая умножает матрицу и печатает. Однако мне нужно создать таблицу умножения с их помощью. Я знаю только, как печатать мои выходные данные, а не форматировать как таблицу, в которой мой код:

 o4 = [0 1;-1 0]';
o2 = o4**2;
o4m = o4**3;
o1 = eye(2,2);

om_x = [-1 0;0 1]';
om_xbx = o4 * om_x;
om_y = o2 * om_x;
om_xx = o4m * om_x;


ops = {o1,o4,o2,o4m,om_xx,om_xbx,om_x,om_y};
labels = {"o1","o4","o2","o4m","om_xx","om_xbx","om_x","om_y"};

for j=1:8
  for i=1:8
        printf("%s * %s = %sn",labels{j},labels{i},whichop(ops{j}*ops{i},ops,labels));
  endfor
endfor
 

и функция:

    for i = 1:numel(labels)
        current_op = ops{i};
        if(norm(m - current_op)<1E-8)
            f = labels{i};
            break;
        endif
   endfor
endfunction
 

Но вывод должен быть таким:

введите описание изображения здесь