Advertisement
Guest User

Untitled

a guest
Dec 8th, 2020
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 6 0.68 KB | None | 0 0
  1. sub proper-divisors (int $number --> int)
  2. {
  3.     my int $candidate = 0;
  4.     my int $divisors = 1;
  5.     # my int $number_sqrt = $number.sqrt.Int + 1;
  6.     for 2 .. $number.sqrt.Int + 1 -> $candidate
  7.     {
  8.         $divisors = $divisors + 2 if $number %% $candidate;
  9.     }
  10.     $divisors + 1;
  11. }
  12.  
  13. sub find-number(--> int) {
  14.     my int $record = 0;
  15.     my int $triangle = 21;
  16.     for 7..Inf {
  17.         $triangle = $triangle + $_;
  18.         my $result = proper-divisors($triangle);
  19.         if $result > $record {
  20.             $record = $result;
  21.             say $record, "-", $_;
  22.         }
  23.         if $result > 500 {
  24.             return $triangle;
  25.         }
  26.     }
  27. }
  28.  
  29. say find-number();
  30.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement