筛选法求100以内的素数。思路:找出一个非素数就把它挖掉,最后剩下就是素数。
欣赏一下go简洁的代码吧
目前不支持GO的代码插入,使用xml的代替一下。
1 package main 2 3 import ( 4 "fmt" 5 "math" 6 ) 7 8 func main() { 9 var i, j, n int 10 var a [101]int 11 for i = 1; i <= 100; i++ { 12 a[i] = i 13 } 14 a[1] = 0 15 for i = 2; i < int(math.Sqrt(100)); i++ { 16 for j = i + 1; j <= 100; j++ { 17 if (a[i] != 0) && (a[j] != 0) { 18 if a[j]%a[i] == 0 { 19 a[j] = 0 20 } 21 } 22 } 23 } 24 fmt.Println() 25 for i, n = 1, 0; i <= 100; i++ { 26 if a[i] != 0 { 27 fmt.Print(a[i], "\t") 28 n++ 29 } 30 if n == 10 { 31 fmt.Println() 32 n = 0 33 } 34 } 35 }
原文:http://www.cnblogs.com/humingx/p/4139729.html