gpt4 book ai didi

ruby - 理性 - ruby 中的原始数字

转载 作者:数据小太阳 更新时间:2023-10-29 08:18:30 25 4
gpt4 key购买 nike

如何获得原始号码?例如当我输入:

r = Rational(2, 10)
# (1/5)

2 和 10 将更改为 1 和 5:

r.numerator   # 1
r.denominator # 5

如何从 Rational 类 (r) 的实例中获取 2 和 10?

我猴子修补了 Rational 类并创建了新方法(Rational_o):

def Rational_o *args
x, y = args
r = Rational *args
r.x = x
r.y = y
r
end

class Rational
attr_accessor :x, :y
end

它可以工作,但是是否有内置方法或变量存储原始 x 和 y?

最佳答案

不,没有。归约是对有理数进行归一化的一种基本且常用的方法。为什么有理数会保留原来的分子和分母?这没有意义。

你的问题就像问“由 "foo"+ "bar"(变成 "foobar")创建的字符串是否保留原始子字符串 ” foo""bar"?它们存储在哪里?"

如果你真的想保留原始数字,那么有理数不是你想要的,子类化 Rational 也不是正确的方法。您应该使用一个包含一对数字的数组。

关于ruby - 理性 - ruby 中的原始数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20717858/

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