RosettaCodeData/Task/Pernicious-numbers/Ruby/pernicious-numbers.rb
2023-07-01 13:44:08 -04:00

16 lines
258 B
Ruby

require "prime"
class Integer
def popcount
to_s(2).count("1") #Ruby 2.4: digits(2).count(1)
end
def pernicious?
popcount.prime?
end
end
p 1.step.lazy.select(&:pernicious?).take(25).to_a
p ( 888888877..888888888).select(&:pernicious?)