Safe primes and unsafe primes: Difference between revisions

Content added Content deleted
Line 1,550: Line 1,550:
633,922 UNSAFE primes found below or equal to 10,000,000.
633,922 UNSAFE primes found below or equal to 10,000,000.
</pre>
</pre>

=={{header|Ring}}==
<lang ring>
load "stdlib.ring"

see "working..." + nl

p = 1
num = 0
limit1 = 36
limit2 = 41
safe1 = 1000000
safe2 = 10000000

see "the first 35 Safeprimes are: " + nl
while true
p = p + 1
p2 = (p-1)/2
if isprime(p) and isprime(p2)
num = num + 1
if num < limit1
see " " + p
else
exit
ok
ok
end

see nl + "the first 40 Unsafeprimes are: " + nl
p = 1
num = 0
while true
p = p + 1
p2 = (p-1)/2
if isprime(p) and not isprime(p2)
num = num + 1
if num < limit2
see " " + p
else
exit
ok
ok
end

p = 1
num1 = 0
num2 = 0
while true
p = p + 1
p2 = (p-1)/2
if isprime(p) and isprime(p2)
if p < safe1
num1 = num1 + 1
ok
if p < safe2
num2 = num2 + 1
else
exit
ok
ok
end

see nl + "safe primes below 1,000,000: " + num1 + nl
see "safe primes below 10,000,000: " + num2 + nl

p = 1
num1 = 0
num2 = 0
while true
p = p + 1
p2 = (p-1)/2
if isprime(p) and not isprime(p2)
if p < safe1
num1 = num1 + 1
ok
if p < safe2
num2 = num2 + 1
else
exit
ok
ok
end

see "unsafe primes below 1,000,000: " + num1 + nl
see "unsafe primes below 10,000,000: " + num2 + nl

see "done..." + nl
</lang>
Output:
<pre>
working...
the first 35 Safeprimes are:
5 7 11 23 47 59 83 107 167 179 227 263 347 359 383 467 479 503 563 587 719 839 863 887 983 1019 1187 1283 1307 1319 1367 1439 1487 1523 1619
the first 40 Unsafeprimes are:
2 3 13 17 19 29 31 37 41 43 53 61 67 71 73 79 89 97 101 103 109 113 127 131 137 139 149 151 157 163 173 181 191 193 197 199 211 223 229 233
safe primes below 1,000,000: 4324
safe primes below 10,000,000: 30657
unsafe primes below 1,000,000: 74174
unsafe primes below 10,000,000: 633922
done...
</pre>




=={{header|Ruby}}==
=={{header|Ruby}}==