Advertisement
cwchen

[Perl 6] Prime numbers in closures.

Nov 28th, 2017
3,343
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 6 0.62 KB | None | 0 0
  1. sub prime {
  2.     my $n = 1;
  3.     my $out;
  4.    
  5.     sub {
  6.         loop {
  7.             $n++;
  8.             my $is-prime = True;
  9.  
  10.             loop (my $i = 2; $i <= $n.sqrt; $i++) {
  11.                 if $n mod $i == 0 {
  12.                     $is-prime = False;
  13.                     last;
  14.                 }
  15.             }
  16.            
  17.             if $is-prime {
  18.                 $out = $n;
  19.                 last;
  20.             }
  21.         }
  22.        
  23.         $out;
  24.     }
  25. }
  26.  
  27. my $p = prime();
  28.  
  29. my @arr = (2, 3, 5, 7, 11, 13, 17, 19, 23);
  30.  
  31. loop (my $i = 0; $i < @arr.elems; $i++) {
  32.     $p() == @arr[$i] or die "Wrong value";
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement