aboutsummaryrefslogtreecommitdiff
path: root/challenge-252/luca-ferrari/postgresql/ch-1.plperl
diff options
context:
space:
mode:
authorLuca Ferrari <fluca1978@gmail.com>2024-01-15 09:12:38 +0100
committerLuca Ferrari <fluca1978@gmail.com>2024-01-15 12:34:18 +0100
commit65a2d0d671dfe4c0ce3e2664b6ac7abce8f0856c (patch)
tree2b33fc29d14d8bc21b85fd0c2f77bb6589e094b3 /challenge-252/luca-ferrari/postgresql/ch-1.plperl
parent7efb373bb9adffa79f84825217015835805298b5 (diff)
downloadperlweeklychallenge-club-65a2d0d671dfe4c0ce3e2664b6ac7abce8f0856c.tar.gz
perlweeklychallenge-club-65a2d0d671dfe4c0ce3e2664b6ac7abce8f0856c.tar.bz2
perlweeklychallenge-club-65a2d0d671dfe4c0ce3e2664b6ac7abce8f0856c.zip
PWC 252
Task 1 Raku done Task 2 Raku done Task 1 PL/Perl done Task 2 PL/Perl done Task 1 PL/PgSQL done Task 2 PL/PgSQL done Task 1 Python done Task 2 Python done Task 1 Java done Task 2 Java done
Diffstat (limited to 'challenge-252/luca-ferrari/postgresql/ch-1.plperl')
-rw-r--r--challenge-252/luca-ferrari/postgresql/ch-1.plperl24
1 files changed, 24 insertions, 0 deletions
diff --git a/challenge-252/luca-ferrari/postgresql/ch-1.plperl b/challenge-252/luca-ferrari/postgresql/ch-1.plperl
new file mode 100644
index 0000000000..5d8298c3e7
--- /dev/null
+++ b/challenge-252/luca-ferrari/postgresql/ch-1.plperl
@@ -0,0 +1,24 @@
+--
+-- Perl Weekly Challenge 252
+-- Task 1
+-- See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-252/>
+--
+
+CREATE SCHEMA IF NOT EXISTS pwc252;
+
+CREATE OR REPLACE FUNCTION
+pwc252.task1_plperl( int[] )
+RETURNS int
+AS $CODE$
+ my ( $nums ) = @_;
+
+ my ( $sum ) = 0;
+
+ for ( 0 .. $nums->@* - 1 ) {
+ next if $nums->@* % ( $_ + 1 ) != 0;
+ $sum += $nums->@[ $_ ] ** 2;
+ }
+
+ return( $sum );
+$CODE$
+LANGUAGE plperl;