 # InchFraction ( Number )

Returns a carpenter's fraction approximating a number between 0 and 1     Average rating: 4.8 (32 votes) Log in to vote L. Allen Poole - Show more from this author Creative Database Solutions NW http://cdsnw.com
Sample input:
InchFraction ( 0.377 )
Sample output:
3/8

Function definition: (Copy & paste into FileMaker's Edit Custom Function window)

Returns a fraction based on denominators between 1 and 32 approximating a decimal fraction between 0 and 1.

0.51 and 0.49 become "1/2"

0.124 and 0.126 become "1/8"

0.819 becomes "13/16" HazMatt, Blaine, MNNov 26, 2015 There's an ampersand missing on the "8th" line. I've taken the liberty to add it and reformat for better legibility: Case( Round(Number * 32; 0) = 32; // Fraction is closer to 1 than 31/32 " +1"; Mod(Round(Number * 32; 0); 2); // Some odd number of 32nds Round(Number * 32; 0) & "/32"; Mod(Round(Number * 16; 0); 2); // Some odd number of 16ths Round(Number * 16; 0) & "/16"; Mod(Round(Number * 8; 0); 2); // Some odd number of 8ths Round(Number * 8; 0) & "/8"; Mod(Round(Number * 4; 0); 2); // Some odd number of 4ths Round(Number * 4; 0) & "/4"; Mod(Round(Number * 2; 0); 2); // 1/2 Round(Number * 2; 0) & "/2"; "" // Fraction is closer to 0 than 1/32 )