Skip to content

Instantly share code, notes, and snippets.

@PRDeltoid
Last active April 14, 2016 04:50
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 PRDeltoid/c73f5405abecbff24c16f6911e39cff9 to your computer and use it in GitHub Desktop.
Save PRDeltoid/c73f5405abecbff24c16f6911e39cff9 to your computer and use it in GitHub Desktop.
require 'prime'
def gap(g, m, n)
(m..n).each{ |i|
#puts "i: #{i} i+g: #{i+g}"
if Prime.prime?(i) && Prime.prime?(i+g)
puts "primes found, stepping"
(i+1..i+g-1).each{ |j|
#puts "i: #{i} j: #{j}"
if Prime.prime?(j)
puts "inner prime found, abort"
return nil
end
}
return [i, i+g]
end
}
return nil
end
TESTS:
Test.assert_equals(gap(10,300,400), [337, 347])
OUTPUT
i: 300 i+g: 310
i: 301 i+g: 311
i: 302 i+g: 312
i: 303 i+g: 313
i: 304 i+g: 314
i: 305 i+g: 315
i: 306 i+g: 316
i: 307 i+g: 317
primes found, stepping
i: 307 j: 308
i: 307 j: 309
i: 307 j: 310
i: 307 j: 311
inner prime found, abort
Expected: [337, 347], instead got: nil
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment