use strict; use warnings; use constant OFFS => 1 - ord 'a'; use constant BASE => ord("z") - ord("a") + 1; sub alphabetic_to_base10 { local $_ = shift; my $num = 0; $num = ($num * BASE) + (OFFS + ord $_) for /./g; return $num; } printf "$_: %d\n", alphabetic_to_base10($_) for qw[a z aa az ba zz aaa + zba]; __END__ a: 1 z: 26 aa: 27 az: 52 ba: 53 zz: 702 aaa: 703 zba: 17629
Makeshifts last the longest.
In reply to Re: Alpha base-26 to base-10...
by Aristotle
in thread Alpha base-26 to base-10...
by eduardo
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |