Perfect numbers: Difference between revisions
Content added Content deleted
Basicgames (talk | contribs) |
Space Ghost (talk | contribs) (Perfect Numbers task written in Odin) |
||
Line 2,803: | Line 2,803: | ||
#isPerfect 10000 seq filter . |
#isPerfect 10000 seq filter . |
||
[6, 28, 496, 8128] |
[6, 28, 496, 8128] |
||
</pre> |
|||
=={{header|Odin}}== |
|||
<syntaxhighlight lang="Go"> |
|||
package perfect_numbers |
|||
import "core:fmt" |
|||
main :: proc() { |
|||
fmt.println("\nPerfect numbers from 1 to 100,000:\n") |
|||
for num in 1 ..< 100001 { |
|||
if divisor_sum(num) == num { |
|||
fmt.print("num:", num, "\n") |
|||
} |
|||
if num % 10000 == 0 { |
|||
fmt.print("Count:", num, "\n") |
|||
} |
|||
} |
|||
} |
|||
divisor_sum :: proc(number: int) -> int { |
|||
sum := 0 |
|||
for i in 1 ..< number { |
|||
if number % i == 0 { |
|||
sum += i} |
|||
} |
|||
return sum |
|||
} |
|||
</syntaxhighlight> |
|||
{{out}} |
|||
<pre> |
|||
Perfect numbers from 1 to 100,000: |
|||
num: 6 |
|||
num: 28 |
|||
num: 496 |
|||
num: 8128 |
|||
</pre> |
</pre> |
||