Вниз
Скачать: CL | DM;

Конвертирование в дробь   Найти похожие ветки 

 
Иван ©   (2002-10-25 10:25) [0]

Здравствуйте! Хочу задать вопрос: как можно конвертировать число с плавающей точкой в математическую дробь?(Может есть компонент какой?) Например:0,25 -> 1/4;
1,89655172413793103448275862068966 -> 55/29
и т.д. и т.п.


 
MBo ©   (2002-10-25 10:31) [1]

для рациональных чисел (периодические дроби) см.
http://algolist.manual.ru/forum/viewtopic.php?t=103


 
Dm9 ©   (2002-10-25 12:46) [2]

Алгоритм такой.
Если дробь конечна, то представлешь в виде X/10^n, потом сокращаешь.
0.25 -> 25/100 -> 1/4
Если после запятой периодический кусок, то делишь этот кусок на 999999... (число девяток = числу цифр в периодической части).
0.(3) -> 3/9 -> 1/3
0.(234) -> 234/999 -> 26/111.
0.0(3) -> 0.(3) / 10 -> 3/9 / 10 -> 1/3 / 10 -> 1/30


 
k ©   (2002-10-25 14:05) [3]

осталось только научиться сокращать дроби, т.е. находить НОД



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
1-11300
dens
2002-10-23 16:32
2002.11.04
проблема с TStrings


1-11185
roadstar
2002-10-24 15:38
2002.11.04
Из C++


14-11470
Ketmar
2002-10-16 10:55
2002.11.04
чего только не найдешь на старых компактах...


1-11152
4nikandr
2002-10-24 13:53
2002.11.04
Возведение в степень


14-11387
Ш-К
2002-10-16 20:28
2002.11.04
Как найти производную функции, заданной параметрически?




   Наверх