Equilibrium index: Difference between revisions

Content added Content deleted
(Updated the program to compile with Nim 1.4. Changed slightly the output. Added the output.)
Line 1,628: Line 1,628:
=={{header|Nim}}==
=={{header|Nim}}==
{{trans|Python}}
{{trans|Python}}
<lang nim>import math, sequtils
<lang nim>import math, sequtils, strutils

iterator eqindex(data) =
iterator eqindex(data: openArray[int]): int =
var suml, ddelayed = 0
var suml, ddelayed = 0
var sumr = sum(data)
var sumr = sum(data)
Line 1,639: Line 1,639:
if suml == sumr:
if suml == sumr:
yield i
yield i

const d = @[@[-7, 1, 5, 2, -4, 3, 0],
const d = @[@[-7, 1, 5, 2, -4, 3, 0],
@[2, 4, 6],
@[2, 4, 6],
@[2, 9, 2],
@[2, 9, 2],
@[1, -1, 1, -1, 1, -1, 1]]
@[1, -1, 1, -1, 1, -1, 1]]
for data in d:
echo "d = [", data.join(", "), ']'
echo "eqIndex(d) -> [", toSeq(eqindex(data)).join(", "), ']'</lang>


{{out}}
for data in d:
echo "d = ", data
<pre>d = [-7, 1, 5, 2, -4, 3, 0]
echo "eqIndex(d) -> ", toSeq(eqindex(data))</lang>
eqIndex(d) -> [3, 6]
d = [2, 4, 6]
eqIndex(d) -> []
d = [2, 9, 2]
eqIndex(d) -> [1]
d = [1, -1, 1, -1, 1, -1, 1]
eqIndex(d) -> [0, 1, 2, 3, 4, 5, 6]</pre>


=={{header|Objeck}}==
=={{header|Objeck}}==