搜索
您的当前位置:首页正文

Go语言:用for多层嵌套编写一个1~100以内的素数的函数

来源:步旅网

多层嵌套在go 语言中,被经常使用。合理利用,可以提高效率,并简化过程。

案例:编写一个1~100以内的素数函数,要求计算有多少个,并计算总和,且输出每行5个

package main

import (
	"fmt"
)

//练习:编写一个函数,输出100以内的所有素数。每行只显示5个,并求和,
//判断:素数为大于1且只能被自己整除

func main() {
	var count int 
	var sum int 
	var flag bool = false //初始值默认为素数
	i := 2
	for ; i <= 100; {
		//重新赋值,从2 ~ 100分别取出i,与从2 ~ (i-1) 的数中取出的j 进行比较,
        //是否被取出的数可以整除
        flag = true 
		for j := 2; j < i; j ++ {
			if i % j == 0 {
				flag = false
			}
		}
		if flag {
			fmt.Printf("%v \t",i)
			sum += i 
			count ++
			if count % 5 == 0 {
				fmt.Println()
			}
		}
		if i == 100 {
			fmt.Println("所有素数的总和为: ", sum)
			fmt.Printf("1~100之间总共有%v个素数 \n",count)
		}
		i ++ 
	}
}

输出的结果:

 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top