- 1
- 2
- 3
- 4
public static int toGrid(int val, int cell)
{
return val/cell*cell; // embracing eternity!
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+76
public static int toGrid(int val, int cell)
{
return val/cell*cell; // embracing eternity!
}
Мерцанием было -1+1. Это-то что?
на ноль что ли поделить...
public static void main(String ... args)
{
long start, end;
int size = 10;
int j = 0;
int i;
int N = 10000;
start = System.nanoTime();
for(i = 0; i < N; i ++)
j = i/size*size;
end = System.nanoTime();
System.out.println("time (div): " +(end-start) + " ns");
start = System.nanoTime();
for(i = 0; i < N; i ++)
j = i - i % size;
end = System.nanoTime();
System.out.println("time (mod): " +(end-start) + " ns");
}
}
============================
time (div): 193913 ns
time (mod): 1156567 ns
Спать надо больше, сорри за провокацию :)
time (mod): 22398544869 ns
time (div): 22653125931 ns
У меня есть интернет-магазин. Мне хочется, чтобы на сайте цены отображались с точностью до 50 рублей, округление делаю в меньшую сторону (клиентов очень люблю). Т. е. если товар стоит 1463 р., на сайте отображается 1450 р. Вот тут-то метод toGrid мне очень пригодиться :)
toGrid(1463, 50) => 1450