web-dev-qa-db-fra.com

Comment exprimer l'infini en rubis?

Y a-t-il un mot-clé pour exprimer l'infini en rubis?

127
Amokrane Chentir

Si vous utilisez Ruby 1.9.2, vous pouvez utiliser :

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

Ou vous pouvez créer votre propre constante à l’aide des éléments suivants *:
J'ai vérifié cela dans Ruby 1.8.6, 1.8.7 et 1.9.2 vous avez Float.infinite? .

PositiveInfinity = +1.0/0.0 
=> Infinity

NegativeInfinity = -1.0/0.0 
=> -Infinity

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

* J'ai vérifié cela dans Ruby 1.8.6 et 1.9.2

180
Matt

Pas de mot clé, mais 1.9.2 a une constante pour cela:

>> Float::INFINITY #=> Infinity
>> 3 < Float::INFINITY #=> true
97
Michael Kohl

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)>
6
davidtingsu