Доброе время суток!
Долго и безрезультатно искал более-менее оптимальный алгоритм решения следующей проблемы:
есть число double, необходимо перевести его десятичную дробь, причем максимальное количество знаков в знаменателе зафиксировано.
То есть пусть у нас реальное значение = 0.337792642140468 (это приблизительно значение дроби 101/299).
Если кол-во знаков задано равным 1, то результат должен быть 1/3
2 — 25/74
3 и более — 101/299
Подскажите пожалуйста как решаеться такая задача без полного перебора.
Заранее спасибо