[Vienna-pm] pseudo-bitmask to ints
franz schaefer
schaefer at mond.at
Tue Oct 23 08:23:09 PDT 2007
meins schaut aehnlich aus....
lg mond.
#!/usr/bin/perl -w
print join(',',bitmap2int('?0?1')),"\n";
sub bitmap2int {
my $map=shift;
my $p=1;
my $b=0;
my @v=(0);
foreach(reverse(split('',$map))) {
$b += $p if $_ eq '1';
if ($_ eq '?' ) {
push @v,map { $p + $_ } @v ;
}
$p = 2 * $p;
}
@v=map { $_ + $b } @v;
return @v;
}
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
. Franz Schaefer GPG KeyID: CFA2F632
.. +43 699 106 14 590 +43 720502048 Fingerprint: 57C2 C0CC
... schaefer at mond.at 6F0A 54C7 0D88 D37E
... http://www.mond.at/ C17C CB16 CFA2 F632
More information about the Vienna-pm
mailing list