Penta-power prime seeds: Difference between revisions

Add Scala implementation
(New post.)
(Add Scala implementation)
Line 976:
644399 770531 781109 782781 923405 1121189 1158975 1483691 1490475 1512321
</pre>
 
=={{header|Scala}}==
{{trans|Java}}
<syntaxhighlight lang="Scala">
import scala.annotation.tailrec
import java.math.BigInteger
 
object PentaPowerPrimeSeeds extends App {
println("The first 30 penta-power prime seeds:")
val first30 = Stream.from(1, 2).filter(isPentaPowerPrimeSeed).take(30)
first30.zipWithIndex.foreach { case (seed, index) =>
print(f"$seed%7d${if ((index + 1) % 6 == 0) "\n" else " "}")
}
 
val firstAbove10M = Stream.from(1, 2).filter(isPentaPowerPrimeSeed).find(_ > 10000000)
firstAbove10M match {
case Some(seed) => println(s"\nThe first penta-power prime seed greater than 10,000,000 is $seed")
case None => println("No penta-power prime seed greater than 10,000,000 was found.")
}
 
def isPentaPowerPrimeSeed(number: Int): Boolean = {
val bigIntNumber = BigInteger.valueOf(number)
val bigIntNumberPlusOne = bigIntNumber.add(BigInteger.ONE)
(0 to 4).forall { i =>
bigIntNumber.pow(i).add(bigIntNumberPlusOne).isProbablePrime(15)
}
}
}
</syntaxhighlight>
{{out}}
<pre>
The first 30 penta-power prime seeds:
1 5 69 1665 2129 25739
29631 62321 77685 80535 82655 126489
207285 211091 234359 256719 366675 407945
414099 628859 644399 770531 781109 782781
923405 1121189 1158975 1483691 1490475 1512321
 
The first penta-power prime seed greater than 10,000,000 is 10347035
 
</pre>
 
 
 
=={{header|Wren}}==
338

edits