aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xchallenge-033/daniel-mita/perl6/ch-2.p628
1 files changed, 28 insertions, 0 deletions
diff --git a/challenge-033/daniel-mita/perl6/ch-2.p6 b/challenge-033/daniel-mita/perl6/ch-2.p6
new file mode 100755
index 0000000000..a91912a2e4
--- /dev/null
+++ b/challenge-033/daniel-mita/perl6/ch-2.p6
@@ -0,0 +1,28 @@
+#!/usr/bin/env perl6
+
+#| Prints a multiplication table with only the top half of the triangle
+sub MAIN (
+ Int $max where * > 0 = 11, #= The max number of the multiplication table (defaults to 11)
+ --> Nil
+) {
+ my @range = 1 .. $max;
+ my $spacing = @range[*-1]².chars + 1;
+
+ print ' x|';
+ print sprintf('%' ~ $spacing ~ 's', $_) for @range;
+ print "\n";
+ print '--+';
+ say [x] «
+ -
+ $spacing
+ @range.elems()
+ »;
+
+ for @range -> $a {
+ print sprintf('%2s|', $a);
+ for @range -> $b {
+ print sprintf('%' ~ $spacing ~ 's', $a ≤ $b ?? $a * $b !! '');
+ }
+ print "\n";
+ }
+}