eduardo,
The concise, but less readable form:
#!/usr/bin/perl -w
use strict;
print base10_it('ba'), "\n";
sub base10_it {
my $base_10;
my @values = reverse split '' , $_[0];
$base_10 += ((ord($values[$_]) - 96) * 26 ** $_) for (0 .. $#value
+s);
$base_10;
}
The more readable and verbose form:
#!/usr/bin/perl -w
use strict;
print base10_it('ba'), "\n";
sub base10_it {
my $base_10;
my $power = 0;
my @values = split '' , $_[0];
while (my $val = pop @values) {
$base_10 += (ord($val) - 96) * 26 ** $power;
$power++;
}
$base_10;
}
Cheers -
Limbic~Region