Skip to content

Instantly share code, notes, and snippets.

@jmervine
Last active October 13, 2017 05:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jmervine/bb46ef08760d85245d60a1a5d24eb831 to your computer and use it in GitHub Desktop.
Save jmervine/bb46ef08760d85245d60a1a5d24eb831 to your computer and use it in GitHub Desktop.
#!/usr/bin/env ruby
# Modifying Float and Integer for fun.
class Float
def whole?
n = self
!!( n % 1 == 0 )
end
end
class Integer
def prime?
n = self
2.upto(n) do |i|
div = n.to_f / i
if div.whole?
return !!(i == n)
end
end
return false
end
def palindromic?
n = self
!!( n == n.to_s.reverse.to_i )
end
def palindromic_prime?
self.palindromic? && self.prime?
end
end
limit = 100
primes = []
2.upto(Float::INFINITY).lazy.each do |x|
break if primes.length == limit
primes.push(x) if x.palindromic_prime?
end
print primes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment