Golang程序 寻找指定范围内的素数
例子
- 输入num1=3和num2=8 => 素数是。3, 5, 7
- 输入num1=8和num2=23 => 质数是。11, 13, 17, 19, 23
解决这个问题的方法
- 第1步:定义一个接受两个数字 num1 和 num2 的函数,类型为 int。
- 第2步:在 num1 和 num2 之间进行迭代 。
- 第3步:如果数字是质数,则打印该数字,否则中断。
程序
package main
import (
"fmt"
"math"
)
func printPrimeNumbers(num1, num2 int){
if num1<2 || num2<2{
fmt.Println("Numbers must be greater than 2.")
return
}
for num1 <= num2 {
isPrime := true
for i:=2; i<=int(math.Sqrt(float64(num1))); i++{
if num1 % i == 0{
isPrime = false
break
}
}
if isPrime {
fmt.Printf("%d ", num1)
}
num1++
}
fmt.Println()
}
func main(){
printPrimeNumbers(5, 19)
printPrimeNumbers(0, 2)
printPrimeNumbers(13, 100)
}
输出
5 7 11 13 17 19
Numbers must be greater than 2.
13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97