Extra primes: Difference between revisions
Content added Content deleted
(Created page with "{{Draft task}}") |
No edit summary |
||
Line 1: | Line 1: | ||
{{Draft task}} |
{{Draft task}} |
||
=={{header|Ring}}== |
|||
<lang ring> |
|||
load "stdlib.ring" |
|||
limit = 1000 |
|||
num = 0 |
|||
for n = 1 to limit |
|||
x1 = prime1(n) |
|||
x2 = prime2(n) |
|||
if x1 = 1 and x2 = 1 |
|||
num = num + 1 |
|||
see "The " + num + "th Extra Prime is: " + n + nl |
|||
ok |
|||
next |
|||
func prime1(x) |
|||
pstr = string(x) |
|||
len = len(pstr) |
|||
count = 0 |
|||
for n = 1 to len |
|||
if isprime(number(pstr[n])) |
|||
count = count + 1 |
|||
ok |
|||
next |
|||
if count = len |
|||
return 1 |
|||
else |
|||
return 0 |
|||
ok |
|||
func prime2(x) |
|||
pstr = string(x) |
|||
len = len(pstr) |
|||
sum = 0 |
|||
for n = 1 to len |
|||
sum = sum + number(pstr[n]) |
|||
next |
|||
if isprime(sum) |
|||
return 1 |
|||
else |
|||
return 0 |
|||
ok |
|||
</lang> |
|||
Output: |
|||
<pre> |
|||
The 1th Extra Prime is: 2 |
|||
The 2th Extra Prime is: 3 |
|||
The 3th Extra Prime is: 5 |
|||
The 4th Extra Prime is: 7 |
|||
The 5th Extra Prime is: 23 |
|||
The 6th Extra Prime is: 25 |
|||
The 7th Extra Prime is: 32 |
|||
The 8th Extra Prime is: 52 |
|||
The 9th Extra Prime is: 223 |
|||
The 10th Extra Prime is: 227 |
|||
The 11th Extra Prime is: 232 |
|||
The 12th Extra Prime is: 272 |
|||
The 13th Extra Prime is: 322 |
|||
The 14th Extra Prime is: 335 |
|||
The 15th Extra Prime is: 337 |
|||
The 16th Extra Prime is: 353 |
|||
The 17th Extra Prime is: 355 |
|||
The 18th Extra Prime is: 373 |
|||
The 19th Extra Prime is: 377 |
|||
The 20th Extra Prime is: 533 |
|||
The 21th Extra Prime is: 535 |
|||
The 22th Extra Prime is: 553 |
|||
The 23th Extra Prime is: 557 |
|||
The 24th Extra Prime is: 575 |
|||
The 25th Extra Prime is: 577 |
|||
The 26th Extra Prime is: 722 |
|||
The 27th Extra Prime is: 733 |
|||
The 28th Extra Prime is: 737 |
|||
The 29th Extra Prime is: 755 |
|||
The 30th Extra Prime is: 757 |
|||
The 31th Extra Prime is: 773 |
|||
The 32th Extra Prime is: 775 |
|||
</pre> |
Revision as of 15:45, 1 December 2020
Extra primes is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.
Ring
<lang ring> load "stdlib.ring"
limit = 1000 num = 0 for n = 1 to limit
x1 = prime1(n) x2 = prime2(n) if x1 = 1 and x2 = 1 num = num + 1 see "The " + num + "th Extra Prime is: " + n + nl ok
next
func prime1(x)
pstr = string(x) len = len(pstr) count = 0 for n = 1 to len if isprime(number(pstr[n])) count = count + 1 ok next if count = len return 1 else return 0 ok
func prime2(x)
pstr = string(x) len = len(pstr) sum = 0 for n = 1 to len sum = sum + number(pstr[n]) next if isprime(sum) return 1 else return 0 ok
</lang> Output:
The 1th Extra Prime is: 2 The 2th Extra Prime is: 3 The 3th Extra Prime is: 5 The 4th Extra Prime is: 7 The 5th Extra Prime is: 23 The 6th Extra Prime is: 25 The 7th Extra Prime is: 32 The 8th Extra Prime is: 52 The 9th Extra Prime is: 223 The 10th Extra Prime is: 227 The 11th Extra Prime is: 232 The 12th Extra Prime is: 272 The 13th Extra Prime is: 322 The 14th Extra Prime is: 335 The 15th Extra Prime is: 337 The 16th Extra Prime is: 353 The 17th Extra Prime is: 355 The 18th Extra Prime is: 373 The 19th Extra Prime is: 377 The 20th Extra Prime is: 533 The 21th Extra Prime is: 535 The 22th Extra Prime is: 553 The 23th Extra Prime is: 557 The 24th Extra Prime is: 575 The 25th Extra Prime is: 577 The 26th Extra Prime is: 722 The 27th Extra Prime is: 733 The 28th Extra Prime is: 737 The 29th Extra Prime is: 755 The 30th Extra Prime is: 757 The 31th Extra Prime is: 773 The 32th Extra Prime is: 775