Мне нужно сравнить набор данных, в котором одна партия данных поступает с валютой с десятичными знаками, такими как 246.54, новые данные удаляют десятичные знаки, не округляют и имеют только 246... поэтому мне нужно удалить десятичные знаки от первой партии, поэтому я могу сравнить. Как мне это сделать без округления?
Отбрасывание десятичной точки
Ответ 1
Используйте функцию пола. Он дает первое целое число, меньшее или равное количеству, которое вы его кормите.
1.9.3-p194 :003 > i = 246.54
=> 246.54
1.9.3-p194 :004 > i.floor
=> 246
Ответ 2
if mynumber >= 0 then
mynumber = mynumber.floor
else
mynumber = 0 - mynumber
mynumber = mynumber.floor
mynumber = 0 - mynumber
end
Ответ 3
Вы можете выполнить округление в рубине:
246.54 .to_nearest_i