X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/0e5d1f97871610a20d556c336b486e0b5a69a9e2..0cb275788053529f8d9948920023198eecddec13:/base.plp diff --git a/base.plp b/base.plp index f34f36e..f1ed06c 100644 --- a/base.plp +++ b/base.plp @@ -2,7 +2,7 @@ Html({ title => 'number bases', - version => 'v1.1', + version => '1.1', description => [ "Cheat sheets summarising various software programs and standards.", ], @@ -13,12 +13,32 @@ Html({ }); my @cols = (2, 6, 8, 9, 10, 12, 16, 18, 20); -my @morecols = (2, 3, 4, 6, 8, 9, 10, 12, 16, 18, 20, 24, 32, 36, 64); +my @morecols = (2 .. 6, 8, 9, 10, 12, 16, 18, 20, 24, 32, 36, 64); my @char = (0..9, 'A'..'Z', 'a'..'z'); :>

Number bases

-

Fractions

+

Radix economy

+ +<: +sub radix_economy { + my ($val, $radix) = @_; + return $radix * int(log($val) / log($radix) + 1); +} + +use List::Util 'sum'; +print '
'; +print '', $_ for @morecols; +for my $max (100, 255, 1024) { + print '
⍳', $max; + for my $radix (@morecols) { + printf '%.1f', + sum(map { radix_economy($_, $radix) } 1 .. $max) / $max; + } +} +:>
+ +

Reciprocal fractions (n⁻¹)

<: print '
'; @@ -74,10 +94,9 @@ for my $n (2 .. $count) {
-

Duplication

+

Duplication (2ⁿ)

<: -use 5.010; sub showint { my ($int, $radix) = @_; my @digits;