We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 53723f6 commit e15742dCopy full SHA for e15742d
challenge-010/daniel-mita/perl6/ch-1.p6
@@ -0,0 +1,27 @@
1
+#!/usr/bin/env perl6
2
+use v6;
3
+
4
+my %letters = ( Ⅰ, |( * X* Ⅴ, Ⅹ ) … * ) Z=> 「IVXLCDM」.comb;
5
6
+sub MAIN (
7
+ UInt:D $number where Ⅰ ≤ * < Ⅳ × Ⅹ**Ⅲ #= A positive integer.
8
+) {
9
+ say [~] gather {
10
+ for $number.flip.comb.pairs.reverse {
11
+ when .value == Ⅳ | Ⅸ {
12
+ take [~] ( %letters{ Ⅹ ** .key X* Ⅰ, .value + Ⅰ } );
13
+ }
14
+ if .value ≥ Ⅴ {
15
+ take %letters{ Ⅹ ** .key * Ⅴ };
16
17
+ take %letters{ Ⅹ ** .key } x .value % Ⅴ;
18
19
20
+}
21
22
+sub GENERATE-USAGE ( &main, |capture ) {
23
+ (capture.first ~~ UInt && capture.first ≥ Ⅳ × Ⅹ**Ⅲ
24
+ ?? "Error:\n Support for numbers greater than MMMCMXCIX not yet implemented.\n\n"
25
+ !! '')
26
+ ~ $*USAGE;
27
0 commit comments