В чем ошибка? Разве S<0 не отрицательное?