aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2021-11-24 01:40:23 +0000
committerGitHub <noreply@github.com>2021-11-24 01:40:23 +0000
commit00260e9d96efcc6f776bd6c7e3649055eda2f9fe (patch)
treed9d62c8639d7cba8fb3e714c6a975d6ad9b9aeef
parent70f069bc729ac1db4792d8467d82b452d1635a32 (diff)
parentd575c804e328a80c38eb44c33318d4a2a94fe9c5 (diff)
downloadperlweeklychallenge-club-00260e9d96efcc6f776bd6c7e3649055eda2f9fe.tar.gz
perlweeklychallenge-club-00260e9d96efcc6f776bd6c7e3649055eda2f9fe.tar.bz2
perlweeklychallenge-club-00260e9d96efcc6f776bd6c7e3649055eda2f9fe.zip
Merge pull request #5263 from fluca1978/pwc140
Pwc140
-rw-r--r--challenge-140/luca-ferrari/blog-1.txt1
-rw-r--r--challenge-140/luca-ferrari/blog-2.txt1
-rw-r--r--challenge-140/luca-ferrari/blog-3.txt1
-rw-r--r--challenge-140/luca-ferrari/blog-4.txt1
-rw-r--r--challenge-140/luca-ferrari/postgresql/ch-1.sql17
-rw-r--r--challenge-140/luca-ferrari/postgresql/ch-2.sql22
-rwxr-xr-xchallenge-140/luca-ferrari/raku/ch-1.p67
-rwxr-xr-xchallenge-140/luca-ferrari/raku/ch-2.p69
8 files changed, 59 insertions, 0 deletions
diff --git a/challenge-140/luca-ferrari/blog-1.txt b/challenge-140/luca-ferrari/blog-1.txt
new file mode 100644
index 0000000000..cbfc101078
--- /dev/null
+++ b/challenge-140/luca-ferrari/blog-1.txt
@@ -0,0 +1 @@
+https://fluca1978.github.io/2021/11/22/PerlWeeklyChallenge140.html#task1
diff --git a/challenge-140/luca-ferrari/blog-2.txt b/challenge-140/luca-ferrari/blog-2.txt
new file mode 100644
index 0000000000..0bfc172cc8
--- /dev/null
+++ b/challenge-140/luca-ferrari/blog-2.txt
@@ -0,0 +1 @@
+https://fluca1978.github.io/2021/11/22/PerlWeeklyChallenge140.html#task2
diff --git a/challenge-140/luca-ferrari/blog-3.txt b/challenge-140/luca-ferrari/blog-3.txt
new file mode 100644
index 0000000000..dbb60ec860
--- /dev/null
+++ b/challenge-140/luca-ferrari/blog-3.txt
@@ -0,0 +1 @@
+https://fluca1978.github.io/2021/11/22/PerlWeeklyChallenge140.html#task1pg
diff --git a/challenge-140/luca-ferrari/blog-4.txt b/challenge-140/luca-ferrari/blog-4.txt
new file mode 100644
index 0000000000..c5fcf8326d
--- /dev/null
+++ b/challenge-140/luca-ferrari/blog-4.txt
@@ -0,0 +1 @@
+https://fluca1978.github.io/2021/11/22/PerlWeeklyChallenge140.html#task2pg
diff --git a/challenge-140/luca-ferrari/postgresql/ch-1.sql b/challenge-140/luca-ferrari/postgresql/ch-1.sql
new file mode 100644
index 0000000000..05b9953179
--- /dev/null
+++ b/challenge-140/luca-ferrari/postgresql/ch-1.sql
@@ -0,0 +1,17 @@
+/**
+* Example
+testdb=> select f_sum_bits( 10::bit( 10 ), 20::bit( 10 ) );
+f_sum_bits
+------------
+0000011110
+(1 row)
+
+*/
+CREATE OR REPLACE FUNCTION f_sum_bits( a bit(10), b bit(10) )
+RETURNS text
+AS $CODE$
+ SELECT ( a::int
+ + b::int )::bit( 10 );
+
+$CODE$
+LANGUAGE sql;
diff --git a/challenge-140/luca-ferrari/postgresql/ch-2.sql b/challenge-140/luca-ferrari/postgresql/ch-2.sql
new file mode 100644
index 0000000000..d7200535c3
--- /dev/null
+++ b/challenge-140/luca-ferrari/postgresql/ch-2.sql
@@ -0,0 +1,22 @@
+CREATE OR REPLACE FUNCTION f_multiplication_table( i int, j int, k int )
+RETURNS int
+AS $CODE$
+
+WITH RECURSIVE a AS (
+ SELECT 1 as x
+ UNION
+ SELECT x + 1 FROM a
+ WHERE x < i
+)
+, b AS (
+ SELECT 1 as y
+ UNION
+ SELECT y + 1 FROM b
+ WHERE y < j
+)
+, product AS ( SELECT x * y FROM a, b ORDER BY 1 )
+
+select * from product limit 1 offset k;
+
+$CODE$
+LANGUAGE SQL;
diff --git a/challenge-140/luca-ferrari/raku/ch-1.p6 b/challenge-140/luca-ferrari/raku/ch-1.p6
new file mode 100755
index 0000000000..5e3aeff205
--- /dev/null
+++ b/challenge-140/luca-ferrari/raku/ch-1.p6
@@ -0,0 +1,7 @@
+#!raku
+
+sub MAIN( Int $a where { $a > 0 && $a ~~ /^ <[01]>+ $/ } ,
+ Int $b where { $b > 0 && $b ~~ /^ <[01]>+ $/ } ) {
+
+ $_.base( 2 ).say given $a.parse-base( 2 ) + $b.parse-base( 2 );
+}
diff --git a/challenge-140/luca-ferrari/raku/ch-2.p6 b/challenge-140/luca-ferrari/raku/ch-2.p6
new file mode 100755
index 0000000000..3e4ce47e1a
--- /dev/null
+++ b/challenge-140/luca-ferrari/raku/ch-2.p6
@@ -0,0 +1,9 @@
+#!raku
+
+sub MAIN( Int $i where { $i > 0 },
+ Int $j where { $j > 0 },
+ Int $k where { $k > 0 && $k < $i * $j } ) {
+
+ my @table = ( 1 .. $i ) X[*] ( 1 .. $j );
+ @table.sort[ $k ].say;
+}