欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

go语言求1到100之内的质数

程序员文章站 2022-03-13 12:05:48
...

素数指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。换句话说,只有两个正因数(1和自己)的自然数即为素数(也叫质数)。比1大但不是素数的数称为合数。1和0既非素数也非合数。

package main

import (
    "fmt"
)

func main() {
    fmt.Println("1-100之间的质数为:")
    // i应直接从2开始
    for i := 2; i <= 100; i++ {
        for n := 2; n <= i; n++ {
            // 当走到最后n等于i 了,则说明下面的i%n==0 && n < i 始终没有成立。说是这个数是个质数。
            if n == i {
                fmt.Printf("%d ", i)
            }
            // 当满足这个条件的时候就终止里面的循环,不用继续往下走了,因为它已经不是一个质数了。
            if i%n == 0 && n < i {
                break
            }
        }
    }
}