Proper divisors: Difference between revisions
Content added Content deleted
(Added uBasic/4tH version) |
Langurmonkey (talk | contribs) (added langur language example) |
||
Line 3,604: | Line 3,604: | ||
18480 |
18480 |
||
</pre> |
</pre> |
||
=={{header|langur}}== |
|||
{{trans|Go}} |
|||
<lang langur>val .getproper = f(.x) for[=[]] .i of .x \ 2 { if .x div .i: _for ~= [.i] } |
|||
val .cntproper = f(.x) for[=0] .i of .x \ 2 { if .x div .i: _for += 1 } |
|||
val .listproper = f(.x) { |
|||
if .x < 1: return null |
|||
for .i of .x { |
|||
writeln $"\.i:2; -> ", .getproper(.i) |
|||
} |
|||
writeln() |
|||
} |
|||
writeln "The proper divisors of the following numbers are :" |
|||
.listproper(10) |
|||
var .max = 0 |
|||
var .most = [] |
|||
for .n in 2 .. 20_000 { |
|||
val .cnt = .cntproper(.n) |
|||
if .cnt == .max { |
|||
.most = more .most, .n |
|||
} else if .cnt > .max { |
|||
.max, .most = .cnt, [.n] |
|||
} |
|||
} |
|||
writeln $"The following number(s) <= 20000 have the most proper divisors (\.max;)" |
|||
writeln .most</lang> |
|||
{{out}} |
|||
<pre>The proper divisors of the following numbers are : |
|||
1 -> [] |
|||
2 -> [1] |
|||
3 -> [1] |
|||
4 -> [1, 2] |
|||
5 -> [1] |
|||
6 -> [1, 2, 3] |
|||
7 -> [1] |
|||
8 -> [1, 2, 4] |
|||
9 -> [1, 3] |
|||
10 -> [1, 2, 5] |
|||
The following number(s) <= 20000 have the most proper divisors (79) |
|||
[15120, 18480] |
|||
</pre> |
|||
=={{header|Lua}}== |
=={{header|Lua}}== |