除法时八度显示分数而不计算值
Octave show fraction when divide without calculating the value
1/23 * [1 2 3] 的计算结果是 [0.041667 0.083333 0.125000]。
我只想要 [1/23 2/23 3/23]
这样的结果
您可以指定 format rat
,以始终将输出显示为有理近似值(适用于 matlab 和八度)。
format rat
a = 1/23 * [1,2,3]
% a = 1/23 2/23 3/23
或者,您可以使用“rat”或“rats”函数来打印(作为字符串)浮点数组的有理近似值:
a = 1/23 * [1,2,3]
% a = 0.043478 0.086957 0.130435
rats(a)
% ans = 1/23 2/23 3/23
正如 Cris 在评论中指出的那样,这只是一个代表性问题。结果的基础 floating-point 表示不会改变。如果您希望在 'mathematical' 意义上处理分数,那么您需要采用不同的方式(可能是符号包,或手动处理分子和分母)。
1/23 * [1 2 3] 的计算结果是 [0.041667 0.083333 0.125000]。
我只想要 [1/23 2/23 3/23]
这样的结果您可以指定 format rat
,以始终将输出显示为有理近似值(适用于 matlab 和八度)。
format rat
a = 1/23 * [1,2,3]
% a = 1/23 2/23 3/23
或者,您可以使用“rat”或“rats”函数来打印(作为字符串)浮点数组的有理近似值:
a = 1/23 * [1,2,3]
% a = 0.043478 0.086957 0.130435
rats(a)
% ans = 1/23 2/23 3/23
正如 Cris 在评论中指出的那样,这只是一个代表性问题。结果的基础 floating-point 表示不会改变。如果您希望在 'mathematical' 意义上处理分数,那么您需要采用不同的方式(可能是符号包,或手动处理分子和分母)。