Na podstawie algorytmu znalezionego w sieci (c++), napisałem w perlu funkcje do generowania liczb rzymskich. Może komuś sie przyda :D
sub conv {
my $toConv = shift;
my @Num = (1, 4, 5, 9, 10, 40, 50, 90, 100, 400, 500, 900, 1000 );
my @Rom = ("I","IV","V","IX","X","XL","L","XC","C","CD","D","CM","M" ) ;
my $res = '';
for( my $i=12; $i>=0; --$i) {
while ($toConv >= $Num[$i]) {
$toConv -= $Num[$i];
$res = $res . $Rom[$i];
}
}
return $res;
}