Làm tròn vòng tròn lên hoặc xuống. Tôi luôn luôn cần nó để làm tròn xuống.Cách để làm nổi các phao xuống
Tôi có giải pháp nhưng tôi không thực sự thích nó ... Có thể có một cách tốt hơn.
Đây là những gì tôi muốn:
1.9999.round_down(2)
#=> 1.99
1.9901.round_down(2)
#=> 1
tôi đã đưa ra giải pháp này nhưng tôi muốn biết nếu có một giải pháp tốt hơn (Tôi không thích mà tôi chuyển đổi phao hai lần). Đã có một phương pháp cho điều này? Bởi vì tôi thấy nó khá kỳ lạ nên tôi không thể tìm thấy nó.
class Float
def round_down(n=0)
((self * 10**n).to_i).to_f/10**n
end
end
Cảm ơn.
Tôi thích giải pháp của bạn ... – reto
nào bạn muốn làm gì với số âm gì?Hướng tới vô cực âm hoặc về không? – l0b0
Nó không chính xác những gì bạn muốn (vì bạn sẽ luôn luôn mất phần thập phân), nhưng nếu bạn chuyển đổi sang một số nguyên bạn sẽ luôn luôn tròn xuống - '1.9901.to_i' - có thể tốt hơn tùy thuộc vào kịch bản của bạn. –