diff options
| author | Mohammad S Anwar <Mohammad.Anwar@yahoo.com> | 2020-05-17 16:22:56 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-05-17 16:22:56 +0100 |
| commit | 394c989470f814679a61ab67dbb9e4d6d6025e71 (patch) | |
| tree | 81dd6ea65e5ac6366ca35ece2a28f1e3e02e9af3 | |
| parent | 2ece0495cd043665633e291413d1c44aad6753e6 (diff) | |
| parent | 072d52105e296d33189d80872af5656ba06edecf (diff) | |
| download | perlweeklychallenge-club-394c989470f814679a61ab67dbb9e4d6d6025e71.tar.gz perlweeklychallenge-club-394c989470f814679a61ab67dbb9e4d6d6025e71.tar.bz2 perlweeklychallenge-club-394c989470f814679a61ab67dbb9e4d6d6025e71.zip | |
Merge pull request #1722 from andemark/branch-for-challenge-060
final
| -rw-r--r-- | challenge-060/mark-anderson/raku/ch-1.raku | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/challenge-060/mark-anderson/raku/ch-1.raku b/challenge-060/mark-anderson/raku/ch-1.raku index c8d3b23d61..0bc777c96d 100644 --- a/challenge-060/mark-anderson/raku/ch-1.raku +++ b/challenge-060/mark-anderson/raku/ch-1.raku @@ -8,7 +8,7 @@ sub from-excel(Str $str) { my $exp = @letters.keys.max; for @letters { - $num += ($_.ord - 64) * (26 ** $exp--); + $num += (.ord - 64) * (26 ** $exp--); } $num; @@ -16,28 +16,26 @@ sub from-excel(Str $str) { sub to-excel(UInt $num is copy) { my $string; - my $quotient; my $remainder; my @letters = ("A" .. "Z"); while $num > 26 { - $quotient = ($num / 26).Int; - $remainder = $num % 26; + $remainder = $num mod 26; + $num div= 26; if $remainder == 0 { - $quotient--; + $num--; $remainder = 26; } $string ~= @letters[$remainder - 1]; - $num = $quotient; } $string ~= @letters[$num - 1]; $string.flip; } -multi sub MAIN (Str $str where $str ~~ /^<[A..Z]>+$/) { +multi sub MAIN (Str $str where $str ~~ /^ <[A..Z]>+ $/) { say from-excel($str); } |
