posted 14 years ago

Hi. Awhile back, I found a class that takes a decimal value and converts it to a fraction. It seemed to have been working OK, but a couple of users noticed some decimal values not converting properly.

The two they've noticed so far are :

.781 should convert to 25/32, but it's converting to 7/9.

.625 should convert to 3/8, but it's converting to 3/5.

I tried to look at the code and figure out what was going on, but I guess I really don't understand everything that is going on to get fraction values.

Could someone take a look at the method that is supposed to be converting the value to a fraction, and help me understand why it is doing it?

Here's the method: (Sorry it's so long)

I appreciate ANY help anyone can give me on this. Thanks again!!

The two they've noticed so far are :

.781 should convert to 25/32, but it's converting to 7/9.

.625 should convert to 3/8, but it's converting to 3/5.

I tried to look at the code and figure out what was going on, but I guess I really don't understand everything that is going on to get fraction values.

Could someone take a look at the method that is supposed to be converting the value to a fraction, and help me understand why it is doing it?

Here's the method: (Sorry it's so long)

I appreciate ANY help anyone can give me on this. Thanks again!!

posted 14 years ago

Try this:

[ November 14, 2003: Message edited by: Tom Blough ]

[ November 14, 2003: Message edited by: Tom Blough ]

[ November 14, 2003: Message edited by: Tom Blough ]

[ November 14, 2003: Message edited by: Tom Blough ]

Tom Blough<br /> <blockquote><font size="1" face="Verdana, Arial">quote:</font><hr>Cum catapultae proscriptae erunt tum soli proscripti catapultas habebunt.<hr></blockquote>

posted 14 years ago

Using continued fractions (I hope I've done this correctly since it was very late ):