вы показали что можно это сделать выбирая только число m,потом уже осматривая отрезок где лежит натуральное число n,но не ясно как вы ограничиваете множество возможных m,ведь если например взять m=21,то слева и справа от n будут десятичные дроби,не ясно почему m принимает значения от 20 до 25,т.е я могу взять число например 19,тоже будет десятичная дробь слева и справа,не вижу толка от знаменателя,пожалуйста объясните что я не учитываю или где-то ошибаюсь.