exercism/go/prime-factors/prime.go

30 lines
468 B
Go

package prime
import (
"fmt"
"strconv"
)
const testVersion = 2
var sieve []int64
func Factors(num int64) []int64 {
var ret []int64
for i := range sieve {
if sieve[i] == num {
return []int64{num}
}
}
ret = []int64{}
for i := int64(2); i <= num; i++ {
fmt.Println("Testing " + strconv.Itoa(int(num)) + "%" + strconv.Itoa(int(i)) + " == " + strconv.Itoa(int(num%i)))
if num%i == 0 {
// It's a factor
ret = append(ret, i)
}
}
return ret
}