Bug #7395 ยป prime_refute_negative_numbers.patch
| lib/prime.rb | ||
|---|---|---|
|
# +value+:: an arbitrary integer to be checked.
|
||
|
# +generator+:: optional. A pseudo-prime generator.
|
||
|
def prime?(value, generator = Prime::Generator23.new)
|
||
|
value = -value if value < 0
|
||
|
return false if value < 2
|
||
|
for num in generator
|
||
|
q,r = value.divmod num
|
||
| test/test_prime.rb | ||
|---|---|---|
|
# negative
|
||
|
assert !-1.prime?
|
||
|
assert(-2.prime?)
|
||
|
assert(-3.prime?)
|
||
|
assert !-2.prime?
|
||
|
assert !-3.prime?
|
||
|
assert !-4.prime?
|
||
|
end
|
||
|
end
|
||