Usage summary:
ft2str( $feet ); # Converts $feet to a pretty format # (rounding to the nearest 1/16"). ft2str( $feet, 4 ); # Rounds to the nearest 1/4" inch instead. ft2str( $feet, 1 ); # Rounds to the nearest inch.
use strict; sub ft2str { my $ft= shift(@_); my $denom= @_ ? shift(@_) : 16; my $numer= int( 0.5 + 12*$denom*$ft ); my $in= int($numer/$denom); $numer -= $denom*$in; $ft= int($in/12); $in -= 12*$ft; if( $numer ) { until( $numer % 2 || $denom % 2 ) { $numer /= 2; $denom /= 2; } $in .= " $numer/$denom" } return qq($in") if ! $ft; return qq($ft') if ! $in; return qq($ft' $in"); } print ft2str(12.1), "\n"; print ft2str(12.1,8), "\n"; print ft2str(0.01), "\n"; print ft2str(12.05,2), "\n"; print ft2str(12.01,2), "\n"; __END__ Produces: 12' 1 3/16" 12' 1 1/4" 0 1/8" 12' 0 1/2" 12'
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Convert feet to feet+inches+fraction
by halley (Prior) on Sep 02, 2003 at 18:58 UTC | |
by tye (Sage) on Sep 02, 2003 at 19:18 UTC |