From b2d1680d3a009d32f5e90f8dd693a5b0a6ca2435 Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Tue, 29 Jan 2013 01:20:52 +0100 Subject: [PATCH 1/1] base: radix economy for 3 different maximums --- base.plp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/base.plp b/base.plp index f34f36e..7d31a4d 100644 --- a/base.plp +++ b/base.plp @@ -18,6 +18,26 @@ my @char = (0..9, 'A'..'Z', 'a'..'z'); :>

Number bases

+

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; + } +} +:>
+

Fractions

<: -- 2.30.0