我們需要將可能類似於3.33333000540733337的計算值轉換爲3 1/3。我試過的任何庫如https://github.com/peterolson/BigRational.js都會將其轉換爲最準確的有理數,而我只關心近似有理數,重要的小數.01。將浮點數轉換爲javascript中的近似分數
在ruby中,我們目前使用Rational(1.333).rationalize(Rational(0.01)),它給出了1作爲整數,1作爲分子,3作爲分母。
對算法的任何想法可能會有所幫助。
[ 「如何浮子轉換爲人類可讀的級分?」](HTTP:// stackoverflow.com/questions/95727/how-to-convert-floats-to-human-readable-fractions)和s特別是[這個面向JavaScript的答案](http://stackoverflow.com/a/681534/1934901) – tehsockz
請記住,將'3.33333000540733337'轉換爲有理數「.01重要小數」將產生'3 33/100 ',而不是'3 1/3'。 –
Peter yep,我們真的需要一個減少的近似分數。 – dstarh