For given Decimal number, calculate possible fractions

36 vues (au cours des 30 derniers jours)
mounika
mounika le 28 Mar 2018
Commenté : mounika le 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
  1 commentaire
David Fletcher
David Fletcher le 28 Mar 2018
Presumably, you'd just be multiplying the numerator and denominator by whatever range

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 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.
  1 commentaire
mounika
mounika le 28 Mar 2018
That solves my issue! Thanks a lot Walter

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by