primes-utils 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 02ae799a48a427c43b317bd72d0c610fb2fd61c2
4
- data.tar.gz: bc2dae709f9f666b50a83c0fe70c25d9f1d5251c
3
+ metadata.gz: 25b2ae668e65792c80d4ac4b920c48f769d81536
4
+ data.tar.gz: c5c4458b63c7865b8929fd85734dad1dd0b57c0e
5
5
  SHA512:
6
- metadata.gz: 07f57ffe182198ec1f90d318586edfda8b10371e5f0a74a3a7303dcb4c224f716145863ef1ede2b69a36c0402df4b5f9f4dbc64bcc98191d916a3e22fce2b4c3
7
- data.tar.gz: f078d942fa9ebb6b8f98b4b2343f27fac5f89e43241989ff7ecd0a04b66561ecb15daf7c330d2191ce63d1f86d048ecc365d2e3e4c6e96a886755debf4bd0084
6
+ metadata.gz: 29fb66f3b01e551576df95d57ff7321ee5d919d0d494f145e7d5e2d53538802e2f497d4ed4d130981a826153f904ff3c1648fd174135732077b25d82598df396
7
+ data.tar.gz: c81e947ae5a70024cd3cf1928551d92abc00f8efcc32c85bf9ade7bd60e96e745e205129066d5f97588c31fd3a8ed74153e506ffacdc6df63d5591325787124d
data/lib/primes/utils.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  require "primes/utils/version"
2
2
 
3
+ require 'rational' if RUBY_VERSION =~ /^(1.8)/ # for 'gcd' method
4
+
3
5
  module Primes
4
6
  module Utils
5
7
  private
@@ -57,7 +59,7 @@ module Primes
57
59
  end
58
60
 
59
61
  def factors(p=13) # P13 is default prime generator here
60
- seeds = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
62
+ seeds = [2, 3, 5, 7, 11, 13, 17, 19]
61
63
  return 'PRIME OPTION NOT A SEEDS PRIME' if !seeds.include? p
62
64
 
63
65
  # find primes <= Pn, compute modPn then Prime Gen residues for Pn
@@ -95,7 +97,7 @@ module Primes
95
97
  # Return value of nth prime
96
98
  # Uses sozP11 Sieve of Zakiya (SoZ) as default prime sieve
97
99
 
98
- seeds = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41]
100
+ seeds = [2, 3, 5, 7, 11, 13, 17, 19]
99
101
  primes = []
100
102
 
101
103
  n = self.abs # the desired nth prime
@@ -217,7 +219,7 @@ module Primes
217
219
  # I modified the Rosetta Code, as shown below
218
220
 
219
221
  require 'openssl'
220
- def primemr?(k=20) # increase k for more reliability
222
+ def primemr?(k=20) # increase k for more reliability
221
223
  n = self.abs
222
224
  return true if n == 2 or n == 3
223
225
  return false if n % 6 != 1 && n % 6 != 5 or n == 1
@@ -241,4 +243,4 @@ module Primes
241
243
  end
242
244
  end
243
245
 
244
- class Integer; include Primes end
246
+ class Integer; include Primes::Utils end
@@ -1,5 +1,5 @@
1
1
  module Primes
2
2
  module Utils
3
- VERSION = "1.0.0"
3
+ VERSION = "1.0.1"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: primes-utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jabari Zakiya