Cómo expresar infinito en Ruby?


¿ Hay una palabra clave para expresar Infinito en Ruby?

 120
Author: mico, 2011-04-25

3 answers

Si usas ruby 1.9.2, puedes usar :

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

O puede crear su propia constante usando el siguiente*:
He comprobado que en Ruby 1.8.6, 1.8.7 y 1.9.2 tienes Float.infinito?.

PositiveInfinity = +1.0/0.0 
=> Infinity

NegativeInfinity = -1.0/0.0 
=> -Infinity

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

*He verificado esto en Ruby 1.8.6 y 1.9.2

 166
Author: Matt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-10-20 02:55:20

No hay palabra clave, pero 1.9.2 tiene una constante para esto:

>> Float::INFINITY #=> Infinity
>> 3 < Float::INFINITY #=> true
 93
Author: Michael Kohl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-04-25 12:54:35

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)>
 5
Author: davidtingsu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-07-25 16:49:27