Sha256: 08dfcb7a7b4fc7001a2a616f213c300d6c014c5337ebec1251f24de939ac261f

Contents?: true

Size: 387 Bytes

Versions: 219

Compression:

Stored size: 387 Bytes

Contents

package prime

func Nth(n int) (p int, ok bool) {
	switch {
	case n < 1:
		return 0, false
	case n == 1:
		return 2, true
	}
	n--
	p = 3
	inc := 1
	sqr := 1
	sqrt := 1
	for {
		for f := 3; ; f += 2 {
			if f > sqrt {
				n--
				if n == 0 {
					return p, true
				}
				break
			}
			if p%f == 0 {
				break
			}
		}
		p += 2
		if p > sqr {
			inc += 2
			sqr += inc
			sqrt++
		}
	}
}

Version data entries

219 entries across 219 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.179 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.178 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.177 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.176 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.175 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.174 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.173 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.172 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.171 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.170 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.169 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.167 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.166 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.165 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.164 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.163 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.162 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.161 tracks/go/exercises/nth-prime/example.go
trackler-2.2.1.160 tracks/go/exercises/nth-prime/example.go