ruby-changes:33797
From: ayumin <ko1@a...>
Date: Fri, 9 May 2014 03:22:45 +0900 (JST)
Subject: [ruby-changes:33797] ayumin:r45878 (trunk): * lib/prime.rb (Prime#prime?): negative numbers can't be primes
ayumin 2014-05-09 03:22:29 +0900 (Fri, 09 May 2014) New Revision: 45878 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=45878 Log: * lib/prime.rb (Prime#prime?): negative numbers can't be primes by definition. reported by Ivan Kataitsev. [Bug #7395] * test/test_prime.rb: add test. Modified files: trunk/ChangeLog trunk/lib/prime.rb trunk/test/test_prime.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 45877) +++ ChangeLog (revision 45878) @@ -1,3 +1,9 @@ https://github.com/ruby/ruby/blob/trunk/ChangeLog#L1 +Fri May 9 03:07:09 2014 Ayumu AIZAWA <ayumu.aizawa@g...> + + * lib/prime.rb (Prime#prime?): negative numbers can't be primes + by definition. reported by Ivan Kataitsev. [Bug #7395] + * test/test_prime.rb: add test. + Thu May 8 14:34:29 2014 Nobuyoshi Nakada <nobu@r...> * class.c (rb_mod_init_copy): always clear instance variable, Index: lib/prime.rb =================================================================== --- lib/prime.rb (revision 45877) +++ lib/prime.rb (revision 45878) @@ -157,7 +157,6 @@ class Prime https://github.com/ruby/ruby/blob/trunk/lib/prime.rb#L157 # +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 Index: test/test_prime.rb =================================================================== --- test/test_prime.rb (revision 45877) +++ test/test_prime.rb (revision 45878) @@ -141,8 +141,8 @@ class TestPrime < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/test_prime.rb#L141 # negative assert !-1.prime? - assert(-2.prime?) - assert(-3.prime?) + assert !-2.prime? + assert !-3.prime? assert !-4.prime? end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/