diff options
| author | Luca Ferrari <fluca1978@gmail.com> | 2023-01-16 11:42:48 +0100 |
|---|---|---|
| committer | Luca Ferrari <fluca1978@gmail.com> | 2023-01-16 11:42:48 +0100 |
| commit | ad488d50e99fd7515521e0902671b2c24d032ad3 (patch) | |
| tree | 54b3257dbd71019ce6295dca63ea05332fe5a0da | |
| parent | 690be1c0b847c56acce9a2927f9dae8d4c151a97 (diff) | |
| download | perlweeklychallenge-club-ad488d50e99fd7515521e0902671b2c24d032ad3.tar.gz perlweeklychallenge-club-ad488d50e99fd7515521e0902671b2c24d032ad3.tar.bz2 perlweeklychallenge-club-ad488d50e99fd7515521e0902671b2c24d032ad3.zip | |
Task 2 plperl done
| -rw-r--r-- | challenge-200/luca-ferrari/postgresql/ch-2.plperl | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/challenge-200/luca-ferrari/postgresql/ch-2.plperl b/challenge-200/luca-ferrari/postgresql/ch-2.plperl new file mode 100644 index 0000000000..d436feaeee --- /dev/null +++ b/challenge-200/luca-ferrari/postgresql/ch-2.plperl @@ -0,0 +1,122 @@ +-- +-- Perl Weekly Challenge 200 +-- Task 2 +-- See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-200/> +-- + +CREATE SCHEMA IF NOT EXISTS pwc200; + +CREATE OR REPLACE FUNCTION +pwc200.task2_plperl( int ) +RETURNS text +AS $CODE$ + + use List::MoreUtils qw/zip/; + my ( $value ) = @_; + + my $lcd = [ + [ ' -------- ', + '| |', + '| |', + '| |', + '| |', + '| |', + ' -------- ', + ], + [ ' ', + ' |', + ' |', + ' |', + ' |', + ' |', + ' ', + ], + [ ' ------ ', + ' |', + ' |', + ' ------ ', + '| ', + '| ', + ' ------ ', + ], + + [ ' ------ ', + ' |', + ' |', + ' ------ ', + ' |', + ' |', + ' ------ ', + ], + + [ '| |', + '| |', + '| |', + ' ------ ', + ' |', + ' |', + ' ', + ], + [ ' ------ ', + '| ', + '| ', + ' ------ ', + ' |', + ' |', + ' ', + ], + [ ' ------ ', + '| ', + '| ', + ' ------ ', + '| |', + '| |', + ' ------ ', + ], + + [ ' -------', + ' |', + ' |', + ' | ', + ' |', + ' |', + ' ', + ], + + [ ' -------- ', + '| |', + '| |', + ' ------- ', + '| |', + '| |', + ' -------- ', + ], + + [ ' -------- ', + '| |', + '| |', + ' ------- ', + ' |', + ' |', + ' -------- ', + ], + + + ]; + + + my $display; + + for my $row ( 0 .. 6 ) { + for ( split '', $value ) { + $display .= ' ' . $lcd->[ $_ ]->[ $row ]; + } + + $display .= "\n"; + } + + $display .= "\n"; + + return $display; +$CODE$ +LANGUAGE plperlu; |
