Я понял ошибку. Вопрос не в алгоритме расчёта, а в вводимых данных.
Я на автомате в реализации сразу ввожу наибольшее число в делимое, а наименьшее число в делитель. То есть у меня первая операция не 1/5, а 5/1. Соответственно у меня получается на 1 шаг меньше.
Теперь всё в порядке.