Go语言生成素数的方法
本文实例讲述了Go语言生成素数的方法。分享给大家供大家参考。具体实现方法如下:
packagemain
//生成2,3,4,...到channel'ch'中.
funcGenerate(chchan<-int){
fori:=2;;i++{
ch<-i //Send'i'tochannel'ch'.
}
}
//从管道复制值'in'到channel'out',
//移除可整除的数'prime'.
funcFilter(in<-chanint,outchan<-int,primeint){
for{
i:=<-in //接收值'in'.
ifi%prime!=0{
out<-i//传入'i'到'out'.
}
}
}
funcmain(){
ch:=make(chanint) //Createanewchannel.
goGenerate(ch)//LaunchGenerategoroutine.
fori:=0;i<10;i++{
prime:=<-ch
print(prime,"\n")
ch1:=make(chanint)
goFilter(ch,ch1,prime)
ch=ch1
}
}
希望本文所述对大家的Go语言程序设计有所帮助。