go语言计算素数个数
时间: 2024-09-14 21:02:14 浏览: 35
Go-一个简单的golang布隆过滤器
在Go语言中,计算某个范围内的素数个数可以采用埃拉托斯特尼筛法(Sieve of Eratosthenes)。下面是一个简单示例,展示了如何实现一个函数来计算指定范围内素数的数量:
```go
package main
import (
"fmt"
"math"
)
// 判断一个数是否为素数
func isPrime(n int) bool {
if n <= 1 {
return false
}
for i := 2; i <= int(math.Sqrt(float64(n))); i++ {
if n%i == 0 {
return false
}
}
return true
}
// 计算给定范围内的素数个数
func countPrimes(start, end int) int {
count := 0
for i := start; i <= end; i++ {
if isPrime(i) {
count++
}
}
return count
}
func main() {
start := 1
end := 100
fmt.Printf("The number of primes between %d and %d is: %d\n", start, end, countPrimes(start, end))
}
```
在这个示例中,`isPrime`函数检查一个数是否为素数,而`countPrimes`函数遍历指定范围,利用`isPrime`函数统计素数个数。
阅读全文