
Не мог в программе найти ошибку. Уже построчно проверял. Пришел к таким выводам: или при присвоении числу float числа int оно округляется, чего не может быть в теории, или не правильно printf выводит число float.
Проблема оказалась в том, что результат от таких действий 1/2 или 3/4 или 5/3 округлялся. Для получения правильного результата надо писать 1.0/2.0 и 3.0/4.0 и 5.0/3.0. Объясните, пожалуйста, в чем прикол такой записи и обязательно ли за этим следить?