Kevin
public text v1 · immutable#!/usr/bin/perl
print roman(1968) . "\n";
sub roman
{
my $number = shift;
$number =~ /(\d*?)(\d{1,3})$/;
my $buf = 'M' x $1;
my @digits = reverse split('',$2);
my @numerals = (
['','I','II','III','IV','V','VI','VII','VIII','IX'],
['','X','XX','XXX','XL','L','LX','LXX','LXXX','XC'],
['','C','CC','CCC','CD','D','DC','DCC','DCCC','CM'],
);
for ($i = scalar(@digits) - 1; $i >= 0; $i--) {
$buf .= $numerals[$i]->[$digits[$i]];
}
return $buf;
}