Thread Suche Perlentsprechung für javascript toString() (6 answers)
Opened by KKO at 2010-04-24 12:02

MatthiasW
 2010-04-25 12:16
#136456 #136456
User since
2008-01-27
367 Artikel
BenutzerIn
[default_avatar]
Das reduce() ist ja hier nur syntactic sugar. Weil sie so kurz und einfach ist, würde ich die rekursive Variante von murphy beibehalten:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
our @VAL = ( 0 .. 9, 'a' .. 'z' ); # edit
our %VAL = map { $VAL[$_] => $_ } 0 .. $#VAL;

sub parseInt {
    my( $str, $base, $int ) = @_;
    $int ||= 0;

    $str =~ /^(.)(.*)$/ ? parseInt( $2, $base, $int * $base + $VAL{lc $1} )
                        : $int;
} # parseInt

sub toString {
    my( $int, $base ) = @_;
    
    $int > 0 ? (toString( int($int/$base), $base ) || '') . $VAL[$int % $base]
             : '0'; # edit
} # toString

edit: Zwei Fehler beseitigt.

MfG
Last edited: 2010-04-25 15:39:01 +0200 (CEST)
perl -E'*==*",s;;%ENV=~m,..$,,$&+42;e,$==f;$"++for+ab..an;@"=qw,u t,,print+chr;sub f{split}say"@{=} me"'

View full thread Suche Perlentsprechung für javascript toString()