aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMárton Polgár <37218286+2colours@users.noreply.github.com>2022-02-21 18:24:51 +0100
committerGitHub <noreply@github.com>2022-02-21 18:24:51 +0100
commit1b528a9e77709d3d6159c9bf4e8066a735049797 (patch)
tree47f1cc98c548411026748c99cd0997ff0988681a
parent1c39414e90bfa4093a8443f28c4d8e00a6809363 (diff)
parente1575d77a4181187d7a30e2ac0df6679f4e2bd43 (diff)
downloadperlweeklychallenge-club-1b528a9e77709d3d6159c9bf4e8066a735049797.tar.gz
perlweeklychallenge-club-1b528a9e77709d3d6159c9bf4e8066a735049797.tar.bz2
perlweeklychallenge-club-1b528a9e77709d3d6159c9bf4e8066a735049797.zip
Merge branch 'manwar:master' into branch-for-challenge-153
-rw-r--r--challenge-153/abigail/README.md29
-rw-r--r--challenge-153/abigail/awk/ch-1.awk19
-rw-r--r--challenge-153/abigail/awk/ch-2.awk26
-rw-r--r--challenge-153/abigail/bash/ch-1.sh21
-rw-r--r--challenge-153/abigail/bash/ch-2.sh30
-rw-r--r--challenge-153/abigail/basic/ch-1.bas9
-rw-r--r--challenge-153/abigail/bc/ch-1.bc26
-rw-r--r--challenge-153/abigail/bc/ch-2.bc34
-rw-r--r--challenge-153/abigail/befunge-93/ch-1.bf932
-rw-r--r--challenge-153/abigail/c/ch-1.c22
-rw-r--r--challenge-153/abigail/c/ch-2.c33
-rw-r--r--challenge-153/abigail/cobol/ch-1.cb14
-rw-r--r--challenge-153/abigail/csh/ch-1.csh11
-rw-r--r--challenge-153/abigail/erlang/ch-1.erl15
-rw-r--r--challenge-153/abigail/forth/ch-1.fs5
-rw-r--r--challenge-153/abigail/fortran/ch-1.f9012
-rw-r--r--challenge-153/abigail/go/ch-1.go25
-rw-r--r--challenge-153/abigail/go/ch-2.go39
-rw-r--r--challenge-153/abigail/java/ch-1.java23
-rw-r--r--challenge-153/abigail/java/ch-2.java30
-rw-r--r--challenge-153/abigail/lua/ch-1.lua22
-rw-r--r--challenge-153/abigail/lua/ch-2.lua30
-rw-r--r--challenge-153/abigail/m4/ch-1.m41
-rw-r--r--challenge-153/abigail/mmix/ch-1.mms16
-rw-r--r--challenge-153/abigail/node/ch-1.js20
-rw-r--r--challenge-153/abigail/node/ch-2.js27
-rw-r--r--challenge-153/abigail/ocaml/ch-1.ml9
-rw-r--r--challenge-153/abigail/pascal/ch-1.p25
-rw-r--r--challenge-153/abigail/pascal/ch-2.p36
-rw-r--r--challenge-153/abigail/perl/ch-1.pl23
-rw-r--r--challenge-153/abigail/perl/ch-2.pl26
-rw-r--r--challenge-153/abigail/php/ch-1.php11
-rw-r--r--challenge-153/abigail/postscript/ch-1.ps10
-rw-r--r--challenge-153/abigail/python/ch-1.py23
-rw-r--r--challenge-153/abigail/python/ch-2.py28
-rw-r--r--challenge-153/abigail/r/ch-1.r22
-rw-r--r--challenge-153/abigail/r/ch-2.r34
-rw-r--r--challenge-153/abigail/rexx/ch-1.rexx9
-rw-r--r--challenge-153/abigail/ruby/ch-1.rb15
-rw-r--r--challenge-153/abigail/ruby/ch-2.rb30
-rw-r--r--challenge-153/abigail/scheme/ch-1.scm23
-rw-r--r--challenge-153/abigail/scheme/ch-2.scm35
-rw-r--r--challenge-153/abigail/sed/ch-1.sed12
-rw-r--r--challenge-153/abigail/sql/ch-1.sql9
-rw-r--r--challenge-153/abigail/t/ctest.ini11
-rw-r--r--challenge-153/abigail/t/input-1-11
-rw-r--r--challenge-153/abigail/t/input-2-12
-rw-r--r--challenge-153/abigail/t/output-1-1.exp1
-rw-r--r--challenge-153/abigail/t/output-2-1.exp2
-rw-r--r--challenge-153/abigail/tcl/ch-1.tcl21
-rw-r--r--challenge-153/abigail/tcl/ch-2.tcl24
-rw-r--r--challenge-153/luca-ferrari/blog-1.txt1
-rw-r--r--challenge-153/luca-ferrari/blog-2.txt1
-rwxr-xr-xchallenge-153/luca-ferrari/raku/ch-1.p620
-rwxr-xr-xchallenge-153/luca-ferrari/raku/ch-2.p66
-rw-r--r--challenge-153/mark-anderson/raku/ch-1.raku3
-rw-r--r--challenge-153/mark-anderson/raku/ch-2.raku9
-rw-r--r--challenge-153/peter-campbell-smith/blog.txt1
-rwxr-xr-xchallenge-153/peter-campbell-smith/perl/ch-1.pl27
-rwxr-xr-xchallenge-153/peter-campbell-smith/perl/ch-2.pl46
-rw-r--r--challenge-153/pokgopun/perl/ch-1.pl17
-rw-r--r--challenge-153/pokgopun/perl/ch-2.pl18
-rwxr-xr-xchallenge-153/roger-bell-west/javascript/ch-1.js46
-rwxr-xr-xchallenge-153/roger-bell-west/javascript/ch-2.js35
-rw-r--r--challenge-153/roger-bell-west/kotlin/ch-1.kt22
-rw-r--r--challenge-153/roger-bell-west/kotlin/ch-2.kt34
-rwxr-xr-xchallenge-153/roger-bell-west/lua/ch-1.lua51
-rwxr-xr-xchallenge-153/roger-bell-west/lua/ch-2.lua34
-rwxr-xr-xchallenge-153/roger-bell-west/perl/ch-1.pl23
-rwxr-xr-xchallenge-153/roger-bell-west/perl/ch-2.pl30
-rw-r--r--challenge-153/roger-bell-west/postscript/ch-1.ps43
-rw-r--r--challenge-153/roger-bell-west/postscript/ch-2.ps33
-rwxr-xr-xchallenge-153/roger-bell-west/python/ch-1.py21
-rwxr-xr-xchallenge-153/roger-bell-west/python/ch-2.py28
-rwxr-xr-xchallenge-153/roger-bell-west/raku/ch-1.p621
-rwxr-xr-xchallenge-153/roger-bell-west/raku/ch-2.p629
-rwxr-xr-xchallenge-153/roger-bell-west/ruby/ch-1.rb25
-rwxr-xr-xchallenge-153/roger-bell-west/ruby/ch-2.rb34
-rwxr-xr-xchallenge-153/roger-bell-west/rust/ch-1.rs24
-rwxr-xr-xchallenge-153/roger-bell-west/rust/ch-2.rs31
-rw-r--r--stats/pwc-challenge-152.json510
-rw-r--r--stats/pwc-current.json449
-rw-r--r--stats/pwc-language-breakdown-summary.json74
-rw-r--r--stats/pwc-language-breakdown.json1087
-rw-r--r--stats/pwc-leaders.json756
-rw-r--r--stats/pwc-summary-1-30.json38
-rw-r--r--stats/pwc-summary-121-150.json48
-rw-r--r--stats/pwc-summary-151-180.json104
-rw-r--r--stats/pwc-summary-181-210.json34
-rw-r--r--stats/pwc-summary-211-240.json106
-rw-r--r--stats/pwc-summary-241-270.json72
-rw-r--r--stats/pwc-summary-31-60.json110
-rw-r--r--stats/pwc-summary-61-90.json38
-rw-r--r--stats/pwc-summary-91-120.json36
-rw-r--r--stats/pwc-summary.json42
95 files changed, 3527 insertions, 1673 deletions
diff --git a/challenge-153/abigail/README.md b/challenge-153/abigail/README.md
index 9b1fd5d762..818ee634c4 100644
--- a/challenge-153/abigail/README.md
+++ b/challenge-153/abigail/README.md
@@ -4,21 +4,50 @@
* [AWK](awk/ch-1.awk)
* [Bash](bash/ch-1.sh)
+* [Basic](basic/ch-1.bas)
+* [bc](bc/ch-1.bc)
+* [Befunge-93](befunge-93/ch-1.bf93)
* [C](c/ch-1.c)
+* [Cobol](cobol/ch-1.cb)
+* [Csh](csh/ch-1.csh)
+* [Erlang](erlang/ch-1.erl)
+* [Forth](forth/ch-1.fs)
+* [Fortran](fortran/ch-1.f90)
+* [Go](go/ch-1.go)
+* [Java](java/ch-1.java)
* [Lua](lua/ch-1.lua)
+* [M4](m4/ch-1.m4)
+* [MMIX](mmix/ch-1.mms)
* [Node.js](node/ch-1.js)
+* [OCaml](ocaml/ch-1.ml)
+* [Pascal](pascal/ch-1.p)
* [Perl](perl/ch-1.pl)
+* [PHP](php/ch-1.php)
+* [PostScript](postscript/ch-1.ps)
* [Python](python/ch-1.py)
+* [R](r/ch-1.r)
+* [Rexx](rexx/ch-1.rexx)
* [Ruby](ruby/ch-1.rb)
+* [Scheme](scheme/ch-1.scm)
+* [sed](sed/ch-1.sed)
+* [sql](sql/ch-1.sql)
+* [Tcl](tcl/ch-1.tcl)
## Part 2
* [AWK](awk/ch-2.awk)
* [Bash](bash/ch-2.sh)
+* [bc](bc/ch-2.bc)
* [C](c/ch-2.c)
+* [Go](go/ch-2.go)
+* [Java](java/ch-2.java)
* [Lua](lua/ch-2.lua)
* [Node.js](node/ch-2.js)
+* [Pascal](pascal/ch-2.p)
* [Perl](perl/ch-2.pl)
* [Python](python/ch-2.py)
+* [R](r/ch-2.r)
* [Ruby](ruby/ch-2.rb)
+* [Scheme](scheme/ch-1.scm)
+* [Tcl](tcl/ch-2.tcl)
diff --git a/challenge-153/abigail/awk/ch-1.awk b/challenge-153/abigail/awk/ch-1.awk
new file mode 100644
index 0000000000..e4a0e26b29
--- /dev/null
+++ b/challenge-153/abigail/awk/ch-1.awk
@@ -0,0 +1,19 @@
+#!/usr/bin/awk
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: awk -f ch-1.awk
+#
+
+BEGIN {
+ sum = 1
+ fac = 1
+ printf "%d", sum
+ for (n = 1; n <= 9; n ++) {
+ printf " %d", sum += fac *= n
+ }
+ printf "\n"
+}
diff --git a/challenge-153/abigail/awk/ch-2.awk b/challenge-153/abigail/awk/ch-2.awk
new file mode 100644
index 0000000000..0ce3b6f0a6
--- /dev/null
+++ b/challenge-153/abigail/awk/ch-2.awk
@@ -0,0 +1,26 @@
+#!/usr/bin/awk
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: awk -f ch-1.awk < input-file
+#
+
+BEGIN {
+ fac [0] = 1
+ for (n = 1; n <= 9; n ++) {
+ fac [n] = n * fac [n - 1]
+ }
+}
+
+{
+ sum = 0
+ n = $1
+ while (n > 0) {
+ sum += fac [n % 10]
+ n = int (n / 10)
+ }
+ print sum == $1 ? 1 : 0
+}
diff --git a/challenge-153/abigail/bash/ch-1.sh b/challenge-153/abigail/bash/ch-1.sh
new file mode 100644
index 0000000000..289ffc568e
--- /dev/null
+++ b/challenge-153/abigail/bash/ch-1.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: bash ch-1.sh
+#
+
+set -f
+
+((sum = 1))
+((fac = 1))
+printf %d $sum
+for ((n = 1; n <= 9; n ++))
+do ((fac *= n))
+ ((sum += fac))
+ printf " %d" $sum
+done
+echo
diff --git a/challenge-153/abigail/bash/ch-2.sh b/challenge-153/abigail/bash/ch-2.sh
new file mode 100644
index 0000000000..a685d42993
--- /dev/null
+++ b/challenge-153/abigail/bash/ch-2.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: bash ch-2.sh < input-file
+#
+
+set -f
+
+declare -a fac
+fac[0]=1
+for ((n = 1; n <= 9; n ++))
+do fac[$n]=$((n * ${fac[$((n - 1))]}))
+done
+
+while read num
+do ((n = num))
+ ((sum = 0))
+ while ((n > 0))
+ do ((sum += ${fac[n % 10]}))
+ ((n /= 10))
+ done
+ if ((sum == num))
+ then echo 1
+ else echo 0
+ fi
+done
diff --git a/challenge-153/abigail/basic/ch-1.bas b/challenge-153/abigail/basic/ch-1.bas
new file mode 100644
index 0000000000..f50baa1acf
--- /dev/null
+++ b/challenge-153/abigail/basic/ch-1.bas
@@ -0,0 +1,9 @@
+010 REM
+020 REM See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+030 REM
+
+040 REM
+050 REM Run as: basic ch-1.bas
+060 REM
+
+100 PRINT "1 2 4 10 34 154 874 5914 46234 409114"
diff --git a/challenge-153/abigail/bc/ch-1.bc b/challenge-153/abigail/bc/ch-1.bc
new file mode 100644
index 0000000000..b5793fa12e
--- /dev/null
+++ b/challenge-153/abigail/bc/ch-1.bc
@@ -0,0 +1,26 @@
+#!/usr/bin/bc
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: bc ch-1.bc
+#
+
+sum = 1
+fac = 1
+
+print sum
+
+for (n = 1; n <= 9; n ++) {
+ fac = fac * n
+ sum = sum + fac
+ print " ", sum
+}
+
+"
+"
+
+halt
+
diff --git a/challenge-153/abigail/bc/ch-2.bc b/challenge-153/abigail/bc/ch-2.bc
new file mode 100644
index 0000000000..d4f59e92e0
--- /dev/null
+++ b/challenge-153/abigail/bc/ch-2.bc
@@ -0,0 +1,34 @@
+#!/usr/bin/bc
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: bc ch-2.bc < input-file
+#
+
+fac [0] = 1
+for (n = 1; n <= 9; n ++) {
+ fac [n] = n * fac [n - 1]
+}
+
+while (1) {
+ num = read ()
+ if (num == 0) {
+ break
+ }
+ n = num
+ sum = 0
+ while (n > 0) {
+ sum += fac [n % 10]
+ n /= 10
+ }
+ if (num == sum) {
+ 1
+ } else {
+ 0
+ }
+}
+
+halt
diff --git a/challenge-153/abigail/befunge-93/ch-1.bf93 b/challenge-153/abigail/befunge-93/ch-1.bf93
new file mode 100644
index 0000000000..dad23c1a52
--- /dev/null
+++ b/challenge-153/abigail/befunge-93/ch-1.bf93
@@ -0,0 +1,2 @@
+< v,_@#:< "1 2 4 10 34 154 874 5914 46234 409114" +55
+ > ^
diff --git a/challenge-153/abigail/c/ch-1.c b/challenge-153/abigail/c/ch-1.c
new file mode 100644
index 0000000000..95fa3dcc2b
--- /dev/null
+++ b/challenge-153/abigail/c/ch-1.c
@@ -0,0 +1,22 @@
+# include <stdlib.h>
+# include <stdio.h>
+# include <string.h>
+
+/*
+ * See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+ */
+
+/*
+ * Run as: cc -o ch-1.o ch-1.c; ./ch-1.o
+ */
+
+int main (void) {
+ int sum = 1;
+ int fac = 1;
+ printf ("%d", sum);
+ for (int n = 1; n <= 9; n ++) {
+ printf (" %d", sum += fac *= n);
+ }
+ printf ("\n");
+ return (0);
+}
diff --git a/challenge-153/abigail/c/ch-2.c b/challenge-153/abigail/c/ch-2.c
new file mode 100644
index 0000000000..3d76b48f10
--- /dev/null
+++ b/challenge-153/abigail/c/ch-2.c
@@ -0,0 +1,33 @@
+# include <stdlib.h>
+# include <stdio.h>
+# include <string.h>
+
+/*
+ * See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+ */
+
+/*
+ * Run as: cc -o ch-2.o ch-2.c; ./ch-2.o < input-file
+ */
+
+int main (void) {
+ int fac [10];
+ int num;
+
+ fac [0] = 1;
+ for (int n = 1; n <= 9; n ++) {
+ fac [n] = n * fac [n - 1];
+ }
+
+ while (scanf ("%d", &num) == 1) {
+ int n = num;
+ int sum = 0;
+ while (n > 0) {
+ sum += fac [n % 10];
+ n /= 10;
+ }