diff options
Diffstat (limited to 'challenge-173/roger-bell-west/python')
| -rwxr-xr-x | challenge-173/roger-bell-west/python/ch-1.py | 38 | ||||
| -rwxr-xr-x | challenge-173/roger-bell-west/python/ch-2.py | 27 |
2 files changed, 65 insertions, 0 deletions
diff --git a/challenge-173/roger-bell-west/python/ch-1.py b/challenge-173/roger-bell-west/python/ch-1.py new file mode 100755 index 0000000000..3ee4659182 --- /dev/null +++ b/challenge-173/roger-bell-west/python/ch-1.py @@ -0,0 +1,38 @@ +#! /usr/bin/python3 + +import unittest + +def esthetic(n0, base): + n = n0 + pdigit = 0 + ch = False + while n > 0: + digit = n % base + if ch and abs(digit - pdigit) != 1: + return False + ch = True + pdigit = digit + n //= base + return True + +def esthetic10(n): + return esthetic(n, 10) + +class TestEsthetic(unittest.TestCase): + + def test_ex1(self): + self.assertEqual(esthetic10(5456),True,'example 1') + + def test_ex2(self): + self.assertEqual(esthetic10(120),False,'example 1') + + def test_ex3(self): + self.assertEqual(esthetic10(12),True,'example 1') + + def test_ex4(self): + self.assertEqual(esthetic10(5654),True,'example 1') + + def test_ex5(self): + self.assertEqual(esthetic10(890),False,'example 1') + +unittest.main() diff --git a/challenge-173/roger-bell-west/python/ch-2.py b/challenge-173/roger-bell-west/python/ch-2.py new file mode 100755 index 0000000000..08e12ca80e --- /dev/null +++ b/challenge-173/roger-bell-west/python/ch-2.py @@ -0,0 +1,27 @@ +#! /usr/bin/python3 + +import unittest + +def sylvester(ct): + o = [ 2 ] + for i in range(2,ct+1): + o.append(1 + (o[-1] * (o[-1] - 1))) + return o + +class TestSylvester(unittest.TestCase): + + def test_ex1(self): + self.assertEqual(sylvester(10),[ + 2, + 3, + 7, + 43, + 1807, + 3263443, + 10650056950807, + 113423713055421844361000443, + 12864938683278671740537145998360961546653259485195807, + 165506647324519964198468195444439180017513152706377497841851388766535868639572406808911988131737645185443 + ],'example 1') + +unittest.main() |
