aboutsummaryrefslogtreecommitdiff
path: root/challenge-272/roger-bell-west/ruby
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-272/roger-bell-west/ruby')
-rwxr-xr-xchallenge-272/roger-bell-west/ruby/ch-1.rb19
-rwxr-xr-xchallenge-272/roger-bell-west/ruby/ch-2.rb27
2 files changed, 46 insertions, 0 deletions
diff --git a/challenge-272/roger-bell-west/ruby/ch-1.rb b/challenge-272/roger-bell-west/ruby/ch-1.rb
new file mode 100755
index 0000000000..82152f9fd3
--- /dev/null
+++ b/challenge-272/roger-bell-west/ruby/ch-1.rb
@@ -0,0 +1,19 @@
+#! /usr/bin/ruby
+
+def defrangip(a)
+ return a.gsub(".", "[.]")
+end
+
+require 'test/unit'
+
+class TestDefrangip < Test::Unit::TestCase
+
+ def test_ex1
+ assert_equal('1[.]1[.]1[.]1', defrangip('1.1.1.1'))
+ end
+
+ def test_ex2
+ assert_equal('255[.]101[.]1[.]0', defrangip('255.101.1.0'))
+ end
+
+end
diff --git a/challenge-272/roger-bell-west/ruby/ch-2.rb b/challenge-272/roger-bell-west/ruby/ch-2.rb
new file mode 100755
index 0000000000..f198380624
--- /dev/null
+++ b/challenge-272/roger-bell-west/ruby/ch-2.rb
@@ -0,0 +1,27 @@
+#! /usr/bin/ruby
+
+def stringscore(a)
+ out = 0
+ a.chars.each_cons(2) do |c|
+ out += (c[0].ord() - c[1].ord()).abs
+ end
+ out
+end
+
+require 'test/unit'
+
+class TestStringscore < Test::Unit::TestCase
+
+ def test_ex1
+ assert_equal(13, stringscore('hello'))
+ end
+
+ def test_ex2
+ assert_equal(30, stringscore('perl'))
+ end
+
+ def test_ex3
+ assert_equal(37, stringscore('raku'))
+ end
+
+end