Carmichael 3 strong pseudoprimes: Difference between revisions

Content added Content deleted
(→‎{{header|Julia}}: A new entry for Julia)
Line 1,146: Line 1,146:
{{works with|Ruby|1.9}}
{{works with|Ruby|1.9}}
<lang ruby># Generate Charmichael Numbers
<lang ruby># Generate Charmichael Numbers

#
# Nigel_Galloway
# November 30th., 2012.
#
require 'prime'
require 'prime'

Integer.each_prime(61) {|p|
Prime.each(61) do |p|
(2...p).each {|h3|
(2...p).each do |h3|
g = h3 + p
g = h3 + p
(1...g).each {|d|
(1...g).each do |d|
next if (g*(p-1)) % d != 0 or (-1*p*p) % h3 != d % h3
next if (g*(p-1)) % d != 0 or (-p*p) % h3 != d % h3
q = 1 + ((p - 1) * g / d)
q = 1 + ((p - 1) * g / d)
next if not q.prime?
next unless q.prime?
r = 1 + (p * q / h3)
r = 1 + (p * q / h3)
next if not r.prime? or not (q * r) % (p - 1) == 1
next unless r.prime? and (q * r) % (p - 1) == 1
puts "#{p} X #{q} X #{r}"
puts "#{p} x #{q} x #{r}"
}
end
}
end
puts ""
puts
}</lang>
end</lang>

{{out}}
{{out}}
<pre style="height:30ex;overflow:scroll">
<pre style="height:30ex;overflow:scroll">
3 X 11 X 17
3 x 11 x 17


5 X 29 X 73
5 x 29 x 73
5 X 17 X 29
5 x 17 x 29
5 X 13 X 17
5 x 13 x 17


7 X 19 X 67
7 x 19 x 67
7 X 31 X 73
7 x 31 x 73
7 X 13 X 31
7 x 13 x 31
7 X 23 X 41
7 x 23 x 41
7 X 73 X 103
7 x 73 x 103
7 X 13 X 19
7 x 13 x 19




13 X 61 X 397
13 x 61 x 397
13 X 37 X 241
13 x 37 x 241
13 X 97 X 421
13 x 97 x 421
13 X 37 X 97
13 x 37 x 97
13 X 37 X 61
13 x 37 x 61


17 X 41 X 233
17 x 41 x 233
17 X 353 X 1201
17 x 353 x 1201


19 X 43 X 409
19 x 43 x 409
19 X 199 X 271
19 x 199 x 271


23 X 199 X 353
23 x 199 x 353


29 X 113 X 1093
29 x 113 x 1093
29 X 197 X 953
29 x 197 x 953


31 X 991 X 15361
31 x 991 x 15361
31 X 61 X 631
31 x 61 x 631
31 X 151 X 1171
31 x 151 x 1171
31 X 61 X 271
31 x 61 x 271
31 X 61 X 211
31 x 61 x 211
31 X 271 X 601
31 x 271 x 601
31 X 181 X 331
31 x 181 x 331


37 X 109 X 2017
37 x 109 x 2017
37 X 73 X 541
37 x 73 x 541
37 X 613 X 1621
37 x 613 x 1621
37 X 73 X 181
37 x 73 x 181
37 X 73 X 109
37 x 73 x 109


41 X 1721 X 35281
41 x 1721 x 35281
41 X 881 X 12041
41 x 881 x 12041
41 X 101 X 461
41 x 101 x 461
41 X 241 X 761
41 x 241 x 761
41 X 241 X 521
41 x 241 x 521
41 X 73 X 137
41 x 73 x 137
41 X 61 X 101
41 x 61 x 101


43 X 631 X 13567
43 x 631 x 13567
43 X 271 X 5827
43 x 271 x 5827
43 X 127 X 2731
43 x 127 x 2731
43 X 127 X 1093
43 x 127 x 1093
43 X 211 X 757
43 x 211 x 757
43 X 631 X 1597
43 x 631 x 1597
43 X 127 X 211
43 x 127 x 211
43 X 211 X 337
43 x 211 x 337
43 X 433 X 643
43 x 433 x 643
43 X 547 X 673
43 x 547 x 673
43 X 3361 X 3907
43 x 3361 x 3907


47 X 3359 X 6073
47 x 3359 x 6073
47 X 1151 X 1933
47 x 1151 x 1933
47 X 3727 X 5153
47 x 3727 x 5153


53 X 157 X 2081
53 x 157 x 2081
53 X 79 X 599
53 x 79 x 599
53 X 157 X 521
53 x 157 x 521


59 X 1451 X 2089
59 x 1451 x 2089


61 X 421 X 12841
61 x 421 x 12841
61 X 181 X 5521
61 x 181 x 5521
61 X 1301 X 19841
61 x 1301 x 19841
61 X 277 X 2113
61 x 277 x 2113
61 X 181 X 1381
61 x 181 x 1381
61 X 541 X 3001
61 x 541 x 3001
61 X 661 X 2521
61 x 661 x 2521
61 X 271 X 571
61 x 271 x 571
61 X 241 X 421
61 x 241 x 421
61 X 3361 X 4021
61 x 3361 x 4021
</pre>
</pre>