Última atividade 1705257890

AimerNeige's Avatar AimerNeige revisou este gist 1705257890. Ir para a revisão

2 files changed, 30 insertions

main.go(arquivo criado)

@@ -0,0 +1,6 @@
1 + func main() {
2 + primeChan := primes()
3 + for i := 0; i < 10; i++ {
4 + fmt.Println(<-primeChan)
5 + }
6 + }

prime.go(arquivo criado)

@@ -0,0 +1,24 @@
1 + func primes() chan int {
2 + ch := make(chan int)
3 + go func() {
4 + defer close(ch)
5 + primes := []int{}
6 + for i := 2; ; i++ {
7 + isPrime := true
8 + for _, p := range primes {
9 + if p*p > i {
10 + break
11 + }
12 + if i%p == 0 {
13 + isPrime = false
14 + break
15 + }
16 + }
17 + if isPrime {
18 + primes = append(primes, i)
19 + ch <- i
20 + }
21 + }
22 + }()
23 + return ch
24 + }
Próximo Anterior