[ruby] 루비로 무한대를 표현하는 방법?

Ruby로 Infinity를 표현하는 키워드가 있습니까?



답변

루비 1.9.2를 사용하는 경우 다음을 사용할 수 있습니다 .

>> Float::INFINITY #=> Infinity
>> 3 < Float::INFINITY #=> true

또는 다음을 사용하여 자신의 상수를 만들 수 있습니다 *
Ruby 1.8.6, 1.8.7 및 1.9.2에서 Float.infinite 가 있는지 확인했습니다 . .

PositiveInfinity = +1.0/0.0
=> Infinity

NegativeInfinity = -1.0/0.0
=> -Infinity

CompleteInfinity = NegativeInfinity..PositiveInfinity
=> -Infinity..Infinity

* Ruby 1.8.6 및 1.9.2에서이를 확인했습니다.


답변

키워드는 없지만 1.9.2에는 상수가 있습니다.

>> Float::INFINITY #=> Infinity
>> 3 < Float::INFINITY #=> true


답변

http://www.ruby-doc.org/stdlib-1.9.3/libdoc/bigdecimal/rdoc/BigDecimal.html#label-Infinity

1.9.3p429 :025 > BigDecimal('Infinity')
 => #<BigDecimal:7f8a6c548140,'Infinity',9(9)>
1.9.3p429 :026 > BigDecimal('-Infinity')
 => #<BigDecimal:7f8a6a0e3728,'-Infinity',9(9)>
1.9.3p429 :027 > 3 < BigDecimal('Infinity')
 => true

1.9.3p429 :028 > BigDecimal::INFINITY
 => #<BigDecimal:7f8a6ad046d8,'Infinity',9(9)>


답변