aboutsummaryrefslogtreecommitdiff
path: root/challenge-153/abigail/ruby
diff options
context:
space:
mode:
authorAbigail <abigail@abigail.freedom.nl>2022-02-21 13:37:03 +0100
committerAbigail <abigail@abigail.freedom.nl>2022-02-21 15:46:34 +0100
commit6d7e1942a22328ba6c83e771d113957909eaabcf (patch)
tree6c36e7ca55e6a70eaeca180472b2d7f961d506a0 /challenge-153/abigail/ruby
parent31c872b0effb42ea88b102e3f60ab89e4eb901ce (diff)
downloadperlweeklychallenge-club-6d7e1942a22328ba6c83e771d113957909eaabcf.tar.gz
perlweeklychallenge-club-6d7e1942a22328ba6c83e771d113957909eaabcf.tar.bz2
perlweeklychallenge-club-6d7e1942a22328ba6c83e771d113957909eaabcf.zip
Solutions for week 153
Diffstat (limited to 'challenge-153/abigail/ruby')
-rw-r--r--challenge-153/abigail/ruby/ch-1.rb15
-rw-r--r--challenge-153/abigail/ruby/ch-2.rb30
2 files changed, 45 insertions, 0 deletions
diff --git a/challenge-153/abigail/ruby/ch-1.rb b/challenge-153/abigail/ruby/ch-1.rb
new file mode 100644
index 0000000000..7d5d17441c
--- /dev/null
+++ b/challenge-153/abigail/ruby/ch-1.rb
@@ -0,0 +1,15 @@
+#!/usr/bin/ruby
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: ruby ch-1.rb
+#
+
+print sum = fac = 1
+for n in 1 .. 9 do
+ print " ", sum += fac *= n
+end
+print "\n"
diff --git a/challenge-153/abigail/ruby/ch-2.rb b/challenge-153/abigail/ruby/ch-2.rb
new file mode 100644
index 0000000000..459642da7a
--- /dev/null
+++ b/challenge-153/abigail/ruby/ch-2.rb
@@ -0,0 +1,30 @@
+#!/usr/bin/ruby
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-153
+#
+
+#
+# Run as: ruby ch-2.rb < input-file
+#
+
+fac = []
+fac [0] = 1
+for n in 1 .. 9 do
+ fac [n] = n * fac [n - 1]
+end
+
+ARGF . each_line do |num|
+ num = num . to_i
+ sum = 0
+ n = num
+ while n > 0 do
+ sum += fac[n % 10]
+ n /= 10
+ end
+ if sum == num then
+ puts (1)
+ else
+ puts (0)
+ end
+end