dj_skittles: Firefox 3.x's image placeholder, used for images that fail to load (Default)
[personal profile] dj_skittles
#!/usr/bin/perl -w
use strict;

my @numnames = (qw/ zero fir seco thi four fif six seven eigh nin /);
my @teennames = (qw/ ten eleven twelf thirteen fourteen fifteen sixteen seventeen eighteen ninteen /);
my @decnames = ('', qw/ ten twenty thirty forty fifty sixty seventy eighty ninety /);
my @suffixes = (qw/ th st nd rd /, ('th') x 6);

foreach my $num (@ARGV) {
        print &hr_place($num), "\n";
}

sub hr_place {
        my ($n) = @_;
        my ($suf, $nm, $ten_suf, $ten_nm) = ('') x 4;

        if ($n =~ /1(\d)$/) {
                # 10-19 get 'th' suffix
                $suf = 'th';
                $nm = $teennames[$1];
        } else {
                # not a teen
                if ($n =~ /(\d)0$/) {
                        # perform translation ('twenty' => 'twentie')
                        ($ten_nm = $decnames[$1]) =~ s/y$/ie/;
                        $ten_suf = 'th';
                } else {
                        $ten_nm = $decnames[($n / 10) % 10];
                        $ten_suf = length $ten_nm ? '-' : '';
                        $suf = $suffixes[$n % 10];
                        $nm = $numnames[$n % 10];
                }
        }

        ($ten_nm, $ten_suf, $nm, $suf)
}

__END__




































And that's how you do it. Works with any number up to 99.

If you found this code useful, leave a comment/suggestion.

April 2012

S M T W T F S
1 234567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Expand Cut Tags

No cut tags