题解 | #完全数计算#
完全数计算
https://www.nowcoder.com/practice/7299c12e6abb437c87ad3e712383ff84
package main
import (
"fmt"
)
func main() {
// 获取输入
var n int
fmt.Scan(&n)
//初始化结果
var res int
//对n范围内的数进行遍历,包括n本身
for i:=1;i<=n;i++{
// 创建因子数组
var yinzis []int
// 创见结果进行比较
var sum int
// 获取除自己以外的因子j<i不能把自己遍历进去
for j:=1;j<i;j++{
if i%j==0{
yinzis = append(yinzis, j)
}
}
// 获取因子和
for _,v:=range yinzis{
sum+=v
}
// 判断这个i是不是完全数
if sum==i{
res++
}
}
fmt.Println(res)
}