Improved utility files
authorNeil Smith <neil.git@njae.me.uk>
Thu, 16 Feb 2017 17:04:53 +0000 (17:04 +0000)
committerNeil Smith <neil.git@njae.me.uk>
Thu, 16 Feb 2017 17:04:53 +0000 (17:04 +0000)
array-numbers.rb [new file with mode: 0644]
primes.rb

diff --git a/array-numbers.rb b/array-numbers.rb
new file mode 100644 (file)
index 0000000..26538d6
--- /dev/null
@@ -0,0 +1,21 @@
+# Some utility extensions for helping manipulate numbers
+# and lists of digits
+
+class Array
+  # Convert a list of digits into a number
+  def to_i
+    self.map {|d| d.to_s}.join.to_i
+  end
+  
+  # Convert a two-item list of nubmers into a rational
+  def to_r
+    Rational(self[0].to_i, self[1].to_i)
+  end
+end
+
+class Integer
+  # Split a number into a list of digits
+  def to_digits
+    self.to_s.split('').map {|d| d.to_i}
+  end
+end 
index 23fd44737758478dfe7cad13b159755b3f94a9c9..7e2cfaacaa817e2418271d2544961271b0bb245a 100644 (file)
--- a/primes.rb
+++ b/primes.rb
@@ -101,3 +101,11 @@ class Primes
 
 end
 
+
+class Integer
+  @@primes = Primes.instance
+  
+  def prime?
+    @@primes.include? self
+  end
+end