找出完数-golang实现 | JianLinker Blog

找出完数-golang实现

题目

一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.
编程找出1000以内的所有完数。

代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package main

import (
"fmt"
)

func isPerfectNum(num int) bool {
var sum int
for i := 1; i < num; i++ {
if num % i == 0 {
sum += i
}
}
return sum == num
}

func main() {
var start,end int
fmt.Scanf("%d %d",&start,&end)

for i := start; i <= end; i++ {< span>
if isPerfectNum(i) {
fmt.Println(i)
}
}
}
JianLinker wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!