Во первых, 599 визуально выглядит меньше, чем 600. Разница минимально, но человек предпочтет купить то, что стоит 599 рублей.
Во вторых, что бы не возращать сдачу в один рубль (одну копейку, если цена 599.99). Довольно большой шанс, что вы забьете на эту сдачу. Магазин, с другой стороны, на этом может крупно заработать. Если 100 человек в день не заберут один рубль, умножаем на 28 рабочих дней и мы получаем прибавку в 2800 рублей. Не плохой такой навар на ровном месте.
PS В разных странах есть закон против цен, на которые невозможно отдать сдачу. Так, при отсутствии монеты достоинством в 1 цент, нельзя ставить цену в 0.99.
А еще есть законы, обязывающие магазины рассказывать, сколько времени товар простоял с той ценой, которая была до скидок.