For given Decimal number, calculate possible fractions

1 view (last 30 days)
mounika on 28 Mar 2018
Commented: mounika on 28 Mar 2018
I am trying to convert a decimal number to possible fractions.
For example, if my decimal is 0.5, the possible fractions can be 1/2, 5/10, 200/400 etc.
I used the 'rat' command which will give me the least possible fraction i.e., 1/2
But is there a way where I can generate the possible fractions as above for a given range ? Any help will be highly appreciated
David Fletcher on 28 Mar 2018
Presumably, you'd just be multiplying the numerator and denominator by whatever range

Walter Roberson on 28 Mar 2018
max_denom = 12345; %what is the largest denominator you permit?
[n, d] = rat(TheNumber);
iters = 1 : floor(max_denom/d);
frac_numerator = n .* iters;
frac_denoms = d .* iters;
There is a slight bit more of a challenge if the numerator or the denominator have to be "round" numbers, with the degree of challenge depending upon the rules of which "round" numbers are permitted.
mounika on 28 Mar 2018
That solves my issue! Thanks a lot Walter