改变整个矩阵的基数

  • 本文关键字:改变 matlab radix
  • 更新时间 :
  • 英文 :


我想将乘法表的基数更改为另一个基数。

如果我使用

disp(dec2base((1:10).*(1:10)',7))

数字一个个地涌出来。然而,我希望它们保持在给定矩阵中的确切位置。

数字基数是一个显示问题,数字总是在内部以基数2存储和操作。所以你所需要做的就是写一个循环,以你想要的方式显示数字

for ii=1:10
for jj=1:10
fprintf('%6s',dec2base(ii*jj,7));
end
fprintf('n');
end

输出:

1     2     3     4     5     6    10    11    12    13
2     4     6    11    13    15    20    22    24    26
3     6    12    15    21    24    30    33    36    42
4    11    15    22    26    33    40    44    51    55
5    13    21    26    34    42    50    55    63   101
6    15    24    33    42    51    60    66   105   114
10    20    30    40    50    60   100   110   120   130
11    22    33    44    55    66   110   121   132   143
12    24    36    51    63   105   120   132   144   156
13    26    42    55   101   114   130   143   156   202

将数字的7进制表示存储为字符串数组:

M = (1:10).*(1:10)';
out = strings(size(M));
for jj = 1:size(M,2)
for ii = 1:size(M,1)
out(ii,jj) = dec2base(M(ii,jj) ,7);
end
end

相关内容

  • 没有找到相关文章

最新更新