ordos monturas moneda llegar isla intemporal huolon fuego dios como ruby-on-rails ruby

ruby-on-rails - monturas - moneda intemporal



Cómo poner un tope y número redondo en rubí (5)

¿Qué hay de number.ceil ?

Esto devuelve el entero más pequeño mayor o igual que el número.

Tenga cuidado si está utilizando esto con números negativos, asegúrese de que haga lo que espera:

1.5.ceil #=> 2 2.0.ceil #=> 2 (-1.5).ceil #=> -1 (-2.0).ceil #=> -2

Me gustaría marcar un número en Ruby (en Rails).

Por ejemplo, tengo, como resultado de una función, un flotador pero necesito un int.

Tengo instrucciones muy específicas, aquí hay algunos ejemplos:

Si obtengo 1.5 quiero 2 pero si obtengo 2.0 quiero 2 (y no 3 )

Hacer number.round(0) + 1 no funcionará.

Podría escribir una función para hacer esto, pero estoy seguro de que ya existe una.

Si, sin embargo, no existe, ¿dónde debería crear mi función de límite?


.ceil es bueno, pero recuerda, incluso el valor más pequeño en float causará esto:

a = 17.00000000000002 17.0 a.ceil 18


Prueba ceil :

1.5.ceil => 2 2.0.ceil => 2


Use Numeric#ceil :

irb(main):001:0> 1.5.ceil => 2 irb(main):002:0> 2.0.ceil => 2 irb(main):003:0> 1.ceil => 1


float.ceil es lo que quieres para números positivos. Asegúrese de considerar el comportamiento de los números negativos. Es decir, ¿quieres -1.5 a "tope" a -1 o -2?