前端之家收集整理的这篇文章主要介绍了
求n以内的所有素数(Golang),
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
packagemain
import(
"fmt"
"math"
)
funcprime(valueint)bool{
ifvalue<=1{
returnfalse
}
ifvalue==2||value==3||value==5||value==7{
returntrue
}
ifvalue%2==0||value%3==0||value%5==0||value%7==0{
returnfalse
}
factor:=7
c:=[]int{4,2,4,6,6}
max:=int(math.Sqrt(float64(value)))
ifmax*max==value{
returnfalse
}
forfactor<max{
fori:=0;i<len(c);i++{
factor+=c[i]
ifvalue%factor==0{
returnfalse
}
}
}
returntrue
}
funcmain(){
varnCountint
n:=1000
fori:=1;i<=n;i++{
ifprime(i){
nCount+=1
fmt.Printf("%5d",i)
ifnCount%8==0{
fmt.Println("")
}
}
}
fmt.Println("Count=",nCount)
}
原文链接:https://www.f2er.com/go/190853.html