判断素数-golang实现 | JianLinker Blog

判断素数-golang实现

题目

判断 101-200 之间有多少个素数,并输出所有素数

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package main

import (
4"fmt"
"math"
)

func isPrime(n int) bool {
for i := 2; i <= n; i++ {< span>
if n%i == 0 {
return false
}
}
}

func main() {
var n int
var m int

fmt.Scanf("%d%d", &n, &m)
for i := n; i < m; i++ {
if isPrime(i) {
fmt.Printf("%d", i)
continue
}
}
}

进一步优化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package main

import (
4"fmt"
"math"
)

func isPrime(n int) bool {
// 取平方根
for i := 2; i <= int(math.Sqrt(float64(n))); i++ {
if n%i == 0 {
return false
}
}
}

func main() {
var n int
var m int

fmt.Scanf("%d %d", &n, *m)
for i := n; i < m; i++ {
if isPrime(i) {
fmt.Printf("%d", i)
continue
}
}
}
JianLinker wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!