【发布时间】:2011-11-22 11:31:21
【问题描述】:
我正在尝试在 Ruby 中计算一个非常大的数字的平方根。我遇到的问题是 Math.sqrt 函数看起来像这样
sqrt(numeric) → float
如果我输入一个非常大的数字,它会给我 FloatDomainError: Infinity。
让sqrt() 返回 BigNum 的最佳方法是什么?这可能有一个宝石,还是我必须编写自己的函数来计算平方根?
在这种情况下,最简单的方法是什么?泰勒级数?数字的平方根总是是整数。
【问题讨论】:
-
哇,比
Float::MAX #=> 1.79769313486232e+308还大?你是如何得到这么大的东西的?是否有任何中间点可以让您扎根?
标签: ruby floating-point bignum sqrt