У тебя происходит смешание double и float.
В C++ оба этих типа дробные числа, но float 32-бита, а double 64-бита, у double больше точность, поэтому если ты пытаешься неявно присвоить floatу double, компилятор покажет предупреждение, что может утратиться точность в результат преобразования.
Не совсем ясно где у тебя это происходит, возможно функция deg возвращает double, а ты пытаешься уместить это в float.
Ты можешь либо поправить возвращаемое значение на float т.к. у тебя везде используются они, либо явно конвертировать тип, показав компилятору что такое преобразование для тебя ок, через (float)<double переменная>