Extreme primes

From Rosetta Code
Revision as of 13:03, 23 April 2023 by CalmoSoft (talk | contribs) (Created page with "<big>Definition</big> <br><br> Write down the first prime number, add the next prime number and if it is prime, add it to the series and so on. These primes are called '''extreme primes''' <br><br> <big>Task</big> <br><br> Find and display the first '''30 p extreme prime''' number on this page. <br><br> =={{header|Ring}}== <syntaxhighlight lang="ring"> see "working..." + nl limit = 2000 Primes = [] for n = 1 to limit if isPrime(n) add(Primes,n) ok next...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Definition

Write down the first prime number, add the next prime number and if it is prime, add it to the series and so on. These primes are called extreme primes

Task

Find and display the first 30 p extreme prime number on this page.

Ring

see "working..." + nl
limit = 2000
Primes = []

for n = 1 to limit
     if isPrime(n)
        add(Primes,n)
     ok
next
sum = 0
row = 0

for n = 1 to len(Primes)
     sum = sum + Primes[n]
     if isPrime(sum)
        row++
        see "" + sum + " "
        if row % 10 = 0
           see nl
        ok
      ok
next
see "done..." + nl

func isPrime num
     if (num <= 1) return 0 ok
     if (num % 2 = 0 and num != 2) return 0 ok
     for i = 3 to floor(num / 2) -1 step 2
         if (num % i = 0) return 0 ok
     next
     return 1
Output:
working...
2 5 17 41 197 281 7699 8893 22039 24133 
25237 28697 32353 37561 38921 43201 44683 55837 61027 66463 
70241 86453 102001 109147 116533 119069 121631 129419 132059 263171 
done...