Prime numbers p for which the sum of primes less than or equal to p is prime: Difference between revisions
Content added Content deleted
(Added Wren) |
(Added Go) |
||
Line 4: | Line 4: | ||
<br><br> |
<br><br> |
||
=={{header|Go}}== |
|||
{{trans|Wren}} |
|||
<lang go>package main |
|||
import ( |
|||
"fmt" |
|||
"rcu" |
|||
) |
|||
func main() { |
|||
primes := rcu.Primes(1000) |
|||
maxSum := 0 |
|||
for _, p := range primes { |
|||
maxSum += p |
|||
} |
|||
c := rcu.PrimeSieve(maxSum, true) |
|||
primeSum := 0 |
|||
var results []int |
|||
for _, p := range primes { |
|||
primeSum += p |
|||
if !c[primeSum] { |
|||
results = append(results, p) |
|||
} |
|||
} |
|||
fmt.Println("Primes 'p' under 1000 where the sum of all primes <= p is also prime:") |
|||
for i, p := range results { |
|||
fmt.Printf("%4d ", p) |
|||
if (i+1)%7 == 0 { |
|||
fmt.Println() |
|||
} |
|||
} |
|||
fmt.Println("\nFound", len(results), "such primes") |
|||
}</lang> |
|||
{{out}} |
|||
<pre> |
|||
Primes 'p' under 1000 where the sum of all primes <= p is also prime: |
|||
2 3 7 13 37 43 281 |
|||
311 503 541 557 593 619 673 |
|||
683 733 743 839 881 929 953 |
|||
Found 21 such primes |
|||
</pre> |
|||
=={{header|Phix}}== |
=={{header|Phix}}== |