aboutsummaryrefslogtreecommitdiff
path: root/challenge-043/stuart-little/raku/ch-2.p6
blob: 1fc414067d39a5cd8e77b406c8ff24b19f4e8285 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/usr/bin/env perl6
use v6;

# run as <script> <base>

sub self_desc($b where * >= 2) {
    $b == (1,2,3,6).any && return "None" xx 2;
    my $b10=($b-4) * $b ** ($b-1)
    + 2 * $b ** ($b-2)
    + $b ** ($b-3)
    + $b ** 3;
    $b10, (($b <= 36) ?? ($b10.base($b)) !! ("base too large"))
}

my $base=@*ARGS[0];
printf("Base 10: %s\nBase {$base}: %s\n", |self_desc($base))