mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
375 B
28 lines
375 B
5 years ago
|
package solutions
|
||
|
|
||
|
import (
|
||
|
"math"
|
||
|
)
|
||
|
|
||
|
func FindNextPrime(value int) int {
|
||
|
isPrime := func(value int) bool {
|
||
|
if value < 2 {
|
||
|
return false
|
||
|
}
|
||
|
limit := int(math.Floor(math.Sqrt(float64(value))))
|
||
|
i := 2
|
||
|
for i <= limit {
|
||
|
if value%i == 0 {
|
||
|
return false
|
||
|
}
|
||
|
i++
|
||
|
}
|
||
|
return true
|
||
|
}
|
||
|
|
||
|
if isPrime(value) {
|
||
|
return value
|
||
|
}
|
||
|
return FindNextPrime(value + 1)
|
||
|
}
|