aboutsummaryrefslogtreecommitdiff
path: root/challenge-148/arne-sommer/raku/cardano-triplets-1
blob: 131b16e395dea64b1e9cb2209e0a79494799e6d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#! /usr/bin/env raku

use Math::Root;

unit sub MAIN (Int $limit = 5, :v(:$verbose));

my $ct := gather
{
  for 1 .. Inf -> $a
  {
    for 1 .. Inf -> $b
    {
      for 1 .. Inf -> $c
      {
        say ": Considering $a, $b, $c" if $verbose;
        take ($a, $b, $c) if root($a + $b * root($c), 3) + root($a - $b * root($c), 3) == 1;
      }
    }
  }
}

$ct[^$limit].map({ say "(" ~ @$_.join(", ") ~ ")" if $_ });