Округлить float в Python с точностью до 50 в меньшую сторону

В меньшую сторону - это критично.

Округлить до 50, не до 100.

Вот таким образом:

199.99 -> 150 
151.99 -> 150 
159.99 -> 150 
149.99 -> 100 
101.99 -> 100

Ответы (1 шт):

Автор решения: Danis

делим на 50 и умножаем на 50

print(199.99 // 50 * 50)
test = (
    (199.99, 150),
    (151.99, 150),
    (159.99, 150),
    (149.99, 100),
    (101.99, 100),
)

for a, b in test:
    print(a // 50 * 50,  b)
→ Ссылка