Это, скорее всего, переполнение Float.
Если Float больше, чем он может обработать, он возвращает бесконечность (это также происходит делением на 0).Вы должны добавить условие, чтобы проверить, находится ли число между -Float.MAX_VALUE и Float.MAX_VALUE (диапазон с плавающей запятой изменяется от 1,40239846 x 10 ^ -45 до 3,40282347 x 10 ^ 38)