Go 求 100 以内的素数和
素数:因子只有 1 和其本身。
package main import "fmt" func main() { var num int for i := 2; i <= 100; i++ { for j := 2; j <= i; j++ { if i % j == 0 && j < i { break } if i == j { num += j } } } fmt.Println(num) } // 1060
其他方法:
package main import "fmt" func main() { var sum int for i:=2;i<=100;i++ { for j:=2;j<=i;j++ { if i%j == 0 && i != j { break } if i == j { fmt.Println(i,"是素数") sum += i } } } fmt.Println("100 以内的素数和和为:",sum) }
package main import "fmt" func main() { var sum int for i := 2; i <= 100; i++ { count := 0 for a := 2; a < i; a++ { if i % a == 0 { count++ break } } if count == 0 { fmt.Println(i,"是素数") sum += i } } fmt.Println("素数和为:",sum) }
package main import "fmt" func main() { var sum int var i,j int for i = 2; i < 100; i++ { for j = 2; j <= (i / j); j++ { if i % j == 0 { break // 如果发现因子则不是素数 } } if j > (i / j) { fmt.Printf("%d 是素数\n",i) sum += i } } fmt.Println("素数和为:",sum) }