gpt4 book ai didi

matlab - 没有Matlab转换为十进制表示的精确分数算术?

转载 作者:行者123 更新时间:2023-12-02 09:30:32 25 4
gpt4 key购买 nike

假设我想以精确分数形式计算 1/9+1/13。由于这两个数字都是有理数,因此可以得到分数形式的精确结果。但是当我在 Matlab 中输入 1/9+1/13 时,结果始终是十进制近似值。

如何获得精确的分数形式?

最佳答案

Matlab 主要是一个数字环境,因此使用 floating-point numbers by default 。通常,您需要使用 Symbolic Math toolbox对于像你所描述的那样的东西。在您的示例中:

sym('1/9')+sym('1/13')

返回22/117

或者,您可以尝试 rats (有理分数近似)适用于浮点输入的函数:

rats(1/9+1/13)

返回字符串'22/117'。还有rat返回分子和分母作为单独的浮点输出。

[n,d] = rat(1/9+1/13)

对于 nd 分别返回 22117

关于matlab - 没有Matlab转换为十进制表示的精确分数算术?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33726458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com