在Go语言中,求前n个素数可以通过一个简单的算法实现。以下是一个示例代码,演示了如何找到前n个素数:
package main
import (
"fmt"
)
// 判断一个数字是否为素数
func isPrime(num int) bool {
if num <= 1 {
return false
}
for i := 2; i*i <= num; i++ {
if num%i == 0 {
return false
}
}
return true
}
// 求前n个素数
func firstNPrimes(n int) []int {
primes := []int{}
num := 2 // 从2开始检查素数
for len(primes) < n {
if isPrime(num) {
primes = append(primes, num)
}
num++
}
return primes
}
func main() {
var n int
fmt.Print("请输入要获取的素数数量: ")
fmt.Scan(&n)
primes := firstNPrimes(n)
fmt.Printf("前 %d 个素数: %v\n", n, primes)
}
程序说明:
- isPrime函数:用于判断给定的数字是否为素数。
- firstNPrimes函数:不断地查找素数,直到找到指定数量的素数。
- main函数:从用户输入读取希望获得的素数数量,然后调用相应的函数并打印结果。
你可以将以上代码复制到你的Go语言环境中运行,输入想要获取的素数数量,即可得到前n个素数。
内容由零声教学AI助手提供,问题来源于学员提问