diff options
| author | Luca Ferrari <fluca1978@gmail.com> | 2023-01-03 18:34:31 +0100 |
|---|---|---|
| committer | Luca Ferrari <fluca1978@gmail.com> | 2023-01-03 18:34:31 +0100 |
| commit | 95eed7fdd1ad6a54bb83cd05a9f304200669af8e (patch) | |
| tree | 4528e8eb9e18aa8fbcac491f38ba786f5b183023 | |
| parent | 38aeff61850bc4679c0c08226d26ffab770e1a0b (diff) | |
| download | perlweeklychallenge-club-95eed7fdd1ad6a54bb83cd05a9f304200669af8e.tar.gz perlweeklychallenge-club-95eed7fdd1ad6a54bb83cd05a9f304200669af8e.tar.bz2 perlweeklychallenge-club-95eed7fdd1ad6a54bb83cd05a9f304200669af8e.zip | |
Task 2 plperl done
| -rw-r--r-- | challenge-198/luca-ferrari/postgresql/ch-2.plperl | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/challenge-198/luca-ferrari/postgresql/ch-2.plperl b/challenge-198/luca-ferrari/postgresql/ch-2.plperl new file mode 100644 index 0000000000..39d1113737 --- /dev/null +++ b/challenge-198/luca-ferrari/postgresql/ch-2.plperl @@ -0,0 +1,23 @@ +CREATE SCHEMA IF NOT EXISTS pwc198; + +CREATE OR REPLACE FUNCTION +pwc198.task2_plperl( int ) +RETURNS int +AS $CODE$ + my ( $n ) = @_; + + my $is_prime = sub { + for ( 2 .. $_[0] - 1 ) { + last if $_ * 2 > $_[0]; + return 0 if $_[0] % $_ == 0; + } + + return 1; + }; + + my $counter = 0; + $counter += $is_prime->( $_ ) for ( 2 .. $n ); + + return $counter; +$CODE$ +LANGUAGE plperl; |
